首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Bash - $PATH和${PATH}

Bash - $PATH和${PATH}
EN

Stack Overflow用户
提问于 2009-09-12 20:15:17
回答 3查看 2.9K关注 0票数 5

使用像PATH这样的环境变量作为$PATH或${PATH}有什么区别?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-09-12 20:22:39

这在大多数情况下是没有区别的。只有当你想在扩展后包含尾随文本时,它才是最重要的。例如,假设您的PATH包含字符串FOO (实际上不是有效路径,但这只是一个示例),并且您希望形成字符串FOOBAR。如果你这样做了

代码语言:javascript
复制
$PATHBAR

您将得到名为PATHBAR的变量的扩展,这可能不是您想要的。如果你这样做了

代码语言:javascript
复制
$PATH BAR

你会在FOOBAR之间得到一个空格,这也不是你想要的。解决方案是使用大括号:

代码语言:javascript
复制
${PATH}BAR

这将为您提供FOOBAR

票数 15
EN

Stack Overflow用户

发布于 2009-09-12 20:21:23

PATH是环境变量的名称,$PATH${PATH}是访问它们的方法。表单${PATH}用于允许像echo ${PATH}b这样的构造,这些构造使用$PATHb会失败。此外,bash允许进行大量的参数替换,man page会很乐意告诉您更多信息。

票数 4
EN

Stack Overflow用户

发布于 2009-09-12 20:22:43

在您的情况下没有区别,但是-以这种情况为例:您有两个变量:

代码语言:javascript
复制
$FOO = "YA"
$YADA = "bar"

那么${$FOODA}什么都不会给你,而${${FOO}DA}会给你"bar“

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1416024

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档