Sto usando la shell bash su Linux e desidero utilizzare più di 10 parametri nello script di shell
Sto usando la shell bash su Linux e desidero utilizzare più di 10 parametri nello script di shell
Risposte:
Usa le parentesi graffe per metterli in risalto:
echo "${10}"
Puoi anche iterare sui parametri posizionali in questo modo:
for arg
o
for arg in "$@"
o
while (( $# > 0 )) # or [ $# -gt 0 ]
do
echo "$1"
shift
done
${10}
è definito da POSIX
${10}
lavorare è necessario solo quando si utilizzano implementazioni molto vecchie che non sono conformi agli standard. Probabilmente solo di interesse storico ... eppure devo ancora usarlo! Suppongo perché le migliori pratiche impongono che 10 argomenti siano troppi a meno che non vengano ripetuti, nel qual caso si itererà su di essi "$@"
anziché enumerarli.
Puoi avere fino a 256 parametri da 0 a 255 con:
${255}
sh -c 'echo ${333}' /usr/bin/*
set $(seq 2097152); echo ${2097152}
-a 1
o--foo=bar
) invece. Vediman getopt
,man getopts
eman bash
per alcune opzioni per farlo.