我对单行bash脚本感到困惑
for i in "$@"
do
set -- "$@" "$i" // what does it mean?
done
我能理解$ @是传入的所有变量,而且我是$ @中的每一个元素,但是,我无法想象是什么
set -- "$@" "$i"
手段。
谢谢。
它将$i
的值附加到位置参数的末尾。不知道为什么会想要这样做,但它基本上是一个加倍参数的冗长方式。它有同样的影响
$ set -- a b c
$ echo "$@"
a b c
$ set -- "$@" "$@"
echo "$@"
a b c a b c