Bash - 每对夫妇的参数

问题描述 投票:0回答:1

我想制作一个包含无限参数的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

做这个的最好方式是什么?

bash while-loop parameters
1个回答
3
投票

你需要移动两个参数,而不只是一个;没有参数的shiftshift 1相同。

while (( $# )); do
  echo "$1" "$2"
  shift 2
done
© www.soinside.com 2019 - 2024. All rights reserved.