gpt4 book ai didi

bash - 我们什么时候需要用大括号括住 shell 变量?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:29:40 31 4
gpt4 key购买 nike

在 shell 脚本中,我们什么时候在扩展变量时使用 {}

例如,我看到了以下内容:

var=10        # Declare variable

echo "${var}" # One use of the variable
echo "$var" # Another use of the variable

是否存在显着差异,还是只是风格?一个比另一个更受欢迎吗?

最佳答案

在这个特定的例子中,它没有区别。但是,如果您想扩展字符串中的变量 foo${} 中的 {} 很有用

"${foo}bar"

因为 "$foobar" 会扩展 foobar 标识的变量。

在以下情况下也无条件需要大括号:

  • 扩展数组元素,如 ${array[42]}
  • 使用参数扩展操作,如 ${filename%.*}(删除扩展名)
  • 将位置参数扩展到 9 以上:"$8 $9 ${10} ${11}"

在任何地方都这样做,而不仅仅是在可能有歧义的情况下,可以被认为是良好的编程习惯。这既是为了保持一致性,也是为了避免像 $foo_$bar.jpg 这样的意外,下划线成为变量名称的一部分在视觉上并不明显。

关于bash - 我们什么时候需要用大括号括住 shell 变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29437451/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com