Bash 使用 for 循环编写参数


例如,

当我写:

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

echo "$$i"

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

for arg in "$@"

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

你为什么不使用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

相关内容

  • 没有找到相关文章

最新更新