GNU/Linux >> Linux Esercitazione >  >> Linux

Che cosa significa [e-mail protetta] in uno script di shell?

$* si espande a tutti i parametri passati a quello script di shell.

$0 =nome dello script di shell

$1 =primo argomento

$2 =secondo argomento...ecc

$# =numero di argomenti passati a shellscript


È facile trovare la risposta da soli:man bash/\$\* :

Parametri speciali

La shell tratta in modo speciale diversi parametri. Questi parametri possono essere solo referenziati; l'assegnazione a loro non è consentita.

  • Si espande ai parametri posizionali, a partire da uno. Quando l'espansione avviene tra virgolette, si espande in una singola parola con il valore di ciascun parametro separato dal primo carattere del IFS variabile speciale. Cioè, "$*" equivale a "$1c$2c..." , dove c è il primo carattere del valore di IFS variabile. Se IFS non è impostato, i parametri sono separati da spazi. Se IFS è nullo, i parametri vengono uniti senza l'interposizione di separatori.

Significa tutti gli argomenti passati allo script o alla funzione, divisi per parola.

Di solito è sbagliato e dovrebbe essere sostituito da "[email protected]" , che separa correttamente gli argomenti.


Linux
  1. Cosa significa `:-` in uno script di shell?

  2. Cosa significa e commerciale alla fine di una riga di script di shell?

  3. Cosa significano i simboli visualizzati da Ls -f?

  4. Cosa significa "rm is hash"?

  5. Che cosa significa ${1+"[email protected]"} in uno script shell e in che cosa differisce da "[email protected]"?

Cosa significa chmod 777

Cosa significa essere "sh compatibile"?

Che cos'è Shebang negli script della shell di Linux?

Nessuna variabile DISPLAY X11 - cosa significa?

Cosa significa uccidere -3?

Cosa fa % nelle stringhe della shell di Linux?