【问题标题】:What does set -- “$@” "$i" mean in Bash?set -- “$@” “$i” 在 Bash 中是什么意思?
【发布时间】:2016-03-24 18:26:59
【问题描述】:

以下循环中的set 命令让我感到困惑。

for i in "$@"
do 
  set -- "$@" "$i" # what does it mean?
done

我可以理解$@是所有位置参数,$i是位置参数之一。但是,我不知道是什么

set -- "$@" "$i" 

意思。

【问题讨论】:

    标签: bash


    【解决方案1】:

    它将$i 的值附加到位置参数的末尾。不确定为什么会想要这样做,但这基本上是一种将参数加倍的冗长方式。效果和

    一样
    $ set -- a b c
    $ echo "$@"
    a b c
    $ set -- "$@" "$@"
    echo "$@"
    a b c a b c
    

    【讨论】:

      猜你喜欢
      • 2015-09-18
      • 1970-01-01
      • 2013-11-06
      • 2019-06-25
      • 1970-01-01
      • 1970-01-01
      • 2016-05-24
      • 1970-01-01
      • 2022-11-17
      相关资源
      最近更新 更多