我的 shell 脚本包含一个for
循环。$1
该脚本通过, $2
,等使用位置参数$3
。但是,尝试使用以下方法从for
循环中访问这些参数:
for i in "$@"; do
echo "$1"
done
... 选择第一个扩展值。例如,当通过 glob ( ./script.sh *.mp4
) 提供文件列表时,在for
循环的每次迭代中, 的值$1
将是 glob 扩展到的第一个文件。
完全相同似乎适用于做:
for i in "$@"; do
echo "$i"
done
是否可以在for
循环中使用位置参数,如果可以,如何使用?
你的第二个片段工作得很好:
结果
如果要遍历索引,则需要算术 for 循环和间接扩展:
输出
参考:3.2.5.1 循环构造,3.5.3 外壳参数扩展