Если у Вас есть список в Python, и Вы хотите элементы от 2 до n, может сделать что-то хорошее как
list[2:]
Я хотел бы к чему-то похожему с argv в Bash. Я хочу передать все элементы от 2$ до argc к команде. Я в настоящее время имею
command $2 $3 $4 $5 $6 $7 $8 $9
но это менее, чем изящно. Был бы быть "надлежащим" путем?
вы также можете выполнять «нарезку», $ @
получает все аргументы в bash.
echo "${@:2}"
получает второй аргумент и далее
например
$ cat shell.sh
#!/bin/bash
echo "${@:2}"
$ ./shell.sh 1 2 3 4
2 3 4
Сохраните где-нибудь $ 1
, затем сдвиньте
и используйте $ @
?
script1.sh:
#!/bin/bash
echo $@
script2.sh:
#!/bin/bash
shift
echo $@
$ sh script1.sh 1 2 3 4
1 2 3 4
$ sh script2.sh 1 2 3 4
2 3 4