Bash - $ PATH和$ {PATH}
-
06-07-2019 - |
题
使用环境变量(如PATH)作为$ PATH或$ {PATH}之间有什么区别?
解决方案
大多数情况没有区别。唯一重要的是,如果要在扩展后包含尾随文本。例如,假设你的 PATH
包含字符串 FOO
(实际上并不是一个有效的路径,但这是一个例子),你想形成字符串 FOOBAR 代码>。如果你做了
$PATHBAR
您将获得名为 PATHBAR
的变量的扩展,这可能不是您想要的。如果你做了
$PATH BAR
你会在 FOO
和 BAR
之间得到一个空格,也不是你想要的。解决方案是使用大括号:
${PATH}BAR
这为您提供 FOOBAR
。
其他提示
PATH
是环境变量的名称, $ PATH
和 $ {PATH}
是访问它们的方法。表单 $ {PATH}
用于允许 echo $ {PATH} b
等构造使用 $ PATHb
失败。此外, bash
允许使用手册页的大量参数替换内容。 a>很乐意告诉你更多关于。
在你的情况下没有区别,但是 - 采取这种情况:你有两个变量:
$FOO = "YA"
$YADA = "bar"
然后 $ {$ FOODA}
会给你什么,而 $ {$ {FOO} DA}
会给你“bar”。
不隶属于 StackOverflow