6

我对 bash 脚本非常陌生,并且在我一直在网上搜索信息时,我发现了很多看似矛盾的建议。我最困惑的是变量名前面的 $ 。我的主要问题是,什么时候适合使用这种语法,什么时候不适合?谢谢!

4

2 回答 2

7

基本上,它在引用变量时使用,但在定义变量时不使用。

当您定义一个变量时,您不使用它:

value=233

调用变量时必须使用它们:

echo "$value"

这个基本规则有一些例外。例如在数学表达式中,如etarion 评论


还有一个问题:如果我声明一个数组 my_array 并用计数器 i 遍历它,那么对它的调用是否必须是 $my_array[$i]?

请参阅示例:

$ myarray=("one" "two" "three")
$ echo ${myarray[1]}     #note that the first index is 0
two

为了遍历它,这段代码使它:

for item in "${myarray[@]}"
do
  echo $item
done

在我们的例子中:

$ for item in "${myarray[@]}"; do echo $item; done
one
two
three
于 2013-09-06T12:47:04.433 回答
1

我不是知道太多的 bash 用户。但是,无论何时声明变量都不会使用 $,而无论何时要调用该变量并使用其值,都将使用 $ 符号。

于 2013-09-06T12:48:11.287 回答