我想制作一个包含无限参数的Bash脚本。
例:
sh example.sh data1 data2 data3 data4 data5 data6 dataN
我希望两个两个地得到这些参数。我尝试使用do-while
:
while (( "$#" )); do
echo $1 $2
shift
done
但最后一个人总是孤身一人:
data1 data2
data2 data3
data3 data4
data4 data5
data5 data6
data6
做这个的最好方式是什么?
你需要移动两个参数,而不只是一个;没有参数的shift
与shift 1
相同。
while (( $# )); do
echo "$1" "$2"
shift 2
done