Bash使用for循环编写参数

时间:2016-05-25 08:41:45

标签: bash

我希望例如在写时使用for循环写所有参数:

for (( i=1; $i <= $#; i++ )) ; do
    echo "${$i}"
done

echo "$$i"

它不起作用。我也不能做循环:

for arg in "$@"

因为我想访问下一个参数,如果current是例如“-n”。 (我的论点将是例如-n 10 -k 50 -s 4)

1 个答案:

答案 0 :(得分:0)

为什么不使用getopts?

while getopts ':n:k:s:' opt
do
case "$opt" in 
n) echo "option n with $OPTRARG"
   ;;
k) echo "option k with $OPTRARG"
   ;;
s) echo "option s with $OPTRARG"
   ;;
*) echo "Bad usage"
esac
done