【发布时间】:2016-03-24 18:26:59
【问题描述】:
以下循环中的set 命令让我感到困惑。
for i in "$@"
do
set -- "$@" "$i" # what does it mean?
done
我可以理解$@是所有位置参数,$i是位置参数之一。但是,我不知道是什么
set -- "$@" "$i"
意思。
【问题讨论】:
标签: bash
以下循环中的set 命令让我感到困惑。
for i in "$@"
do
set -- "$@" "$i" # what does it mean?
done
我可以理解$@是所有位置参数,$i是位置参数之一。但是,我不知道是什么
set -- "$@" "$i"
意思。
【问题讨论】:
标签: bash
它将$i 的值附加到位置参数的末尾。不确定为什么会想要这样做,但这基本上是一种将参数加倍的冗长方式。效果和
$ set -- a b c
$ echo "$@"
a b c
$ set -- "$@" "$@"
echo "$@"
a b c a b c
【讨论】: