Używam powłoki bash w systemie Linux i chcę użyć więcej niż 10 parametrów w skrypcie powłoki
linux
bash
shell
parameters
Ashitosh
źródło
źródło
-a 1
Lub--foo=bar
). Zobaczman getopt
,man getopts
iman bash
kilka opcji, jak to zrobić.Odpowiedzi:
Użyj nawiasów klamrowych, aby je podkreślić:
Możesz również iterować po parametrach pozycyjnych w następujący sposób:
lub
lub
źródło
${10}
jest zdefiniowany przez POSIX${10}
pracę jest konieczne tylko w przypadku używania bardzo starych implementacji, które nie są zgodne ze standardami. Prawdopodobnie tylko o znaczeniu historycznym ... a jednak nigdy go nie użyłem! Przypuszczam, że ponieważ najlepsza praktyka mówi, że 10 argumentów to zdecydowanie za dużo, chyba że zostaną powtórzone, w takim przypadku będziesz je powtarzać,"$@"
a nie wyliczać.Możesz mieć do 256 parametrów od 0 do 255 z:
źródło
sh -c 'echo ${333}' /usr/bin/*
set $(seq 2097152); echo ${2097152}