Estoy usando bash shell en linux y quiero usar más de 10 parámetros en el script de shell
Estoy usando bash shell en linux y quiero usar más de 10 parámetros en el script de shell
Respuestas:
Use llaves para resaltarlas:
echo "${10}"
También puede iterar sobre los parámetros posicionales como este:
for arg
o
for arg in "$@"
o
while (( $# > 0 )) # or [ $# -gt 0 ]
do
echo "$1"
shift
done
${10}
es definido por POSIX
${10}
funcionamiento solo es necesario cuando se utilizan implementaciones muy antiguas que no cumplen con los estándares. Probablemente solo de interés histórico ... ¡y aún no lo he usado! Supongo que porque las mejores prácticas dictan que 10 argumentos son demasiados a menos que se repitan, en cuyo caso los iterará en "$@"
lugar de enumerarlos.
Puede tener hasta 256 parámetros de 0 a 255 con:
${255}
sh -c 'echo ${333}' /usr/bin/*
set $(seq 2097152); echo ${2097152}
-a 1
o--foo=bar
) en su lugar. Consulteman getopt
,man getopts
yman bash
para conocer algunas opciones para hacerlo.