$*
expanduje na všechny parametry, které byly předány tomuto skriptu shellu.
$0
=název skriptu shell
$1
=první argument
$2
=druhý argument...atd
$#
=počet argumentů předaných do shellscript
Je snadné najít odpověď sami:man bash
→ /\$\*
:
Speciální parametry
Shell zachází s několika parametry speciálně. Na tyto parametry lze pouze odkazovat; přiřazení k nim není povoleno.
- Rozšíří se na poziční parametry počínaje jedničkou. Když se rozbalení objeví v uvozovkách, rozvine se na jedno slovo s hodnotou každého parametru oddělenou prvním znakem
IFS
speciální proměnná. To znamená"$*"
je ekvivalentní"$1c$2c..."
, kdec
je první znak hodnotyIFS
variabilní. PokudIFS
není nastaven, parametry jsou odděleny mezerami. PokudIFS
je null, parametry jsou spojeny bez zasahujících oddělovačů.
Znamená to všechny argumenty předané skriptu nebo funkci, rozdělené podle slov.
Obvykle je chybný a měl by být nahrazen "[email protected]"
, který správně odděluje argumenty.
Jaký je rozdíl mezi xterm-color a xterm-256color?
Vytvoření souboru CMakeLists z existujícího souboru Makefile