我非常擅长打击脚本,因为我一直在网上搜索信息,我发现了许多看似矛盾的建议。我最困惑的是变量名前面的$。我的主要问题是,何时使用该语法并且不合适?谢谢!
答案 0 :(得分:7)
基本上,它在引用变量时使用,但在定义时不使用。
定义变量时,不要使用它:
value=233
调用变量时必须使用它们:
echo "$value"
这个基本规则有一些例外。例如,在数学表达中,为etarion comments。
还有一个问题:如果我声明一个数组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
答案 1 :(得分:1)
我不是太了解的bash用户。但无论何时声明变量,都不会使用$,并且每当你想调用该变量并使用它的值时,你都会使用$符号。