$PATH与$(PATH)与${PATH}有什么区别?

sh/bash/dash/ksh/zsh等Shell脚本
回复
头像
tosail2010
帖子: 83
注册时间: 2011-03-27 19:01
联系:

$PATH与$(PATH)与${PATH}有什么区别?

#1

帖子 tosail2010 » 2011-06-28 10:10

如题,一直不解,请高人指点。谢谢。
A year's plan starts with spring.
tusooa
帖子: 6548
注册时间: 2008-10-31 22:12
系统: 践兔
联系:

Re: $PATH与$(PATH)与${PATH}有什么区别?

#2

帖子 tusooa » 2011-06-28 10:26

$(PATH)是执行PATH命令,获取输出.
$PATH 和 ${PATH} 都是取得 PATH 变量的值.

代码: 全选

] ls -ld //
头像
adam8157
帖子: 2794
注册时间: 2009-03-05 16:31
联系:

Re: $PATH与$(PATH)与${PATH}有什么区别?

#3

帖子 adam8157 » 2011-06-28 10:58

tusooa 写了:$(PATH)是执行PATH命令,获取输出.
$PATH 和 ${PATH} 都是取得 PATH 变量的值.
多解释一句, {}只是限制范围, 例如${PATH}foobar, 不加{}会有问题...
头像
tosail2010
帖子: 83
注册时间: 2011-03-27 19:01
联系:

Re: $PATH与$(PATH)与${PATH}有什么区别?

#4

帖子 tosail2010 » 2011-06-28 11:01

tusooa 写了:$(PATH)是执行PATH命令,获取输出.
$PATH 和 ${PATH} 都是取得 PATH 变量的值.
“PATH”大小写有区别吗?
A year's plan starts with spring.
xiii_1991
帖子: 47
注册时间: 2008-12-27 15:16

Re: $PATH与$(PATH)与${PATH}有什么区别?

#5

帖子 xiii_1991 » 2011-06-28 12:06

tosail2010 写了: “PATH”大小写有区别吗?
当然有区别,P和p是不同的字符
只有PATH才是那个变量的名字
lubcat
帖子: 2061
注册时间: 2010-09-27 12:59

Re: $PATH与$(PATH)与${PATH}有什么区别?

#6

帖子 lubcat » 2011-06-28 15:24

linux上区分大小写的。
生活里,有很多转瞬即逝,像在车站的告别,刚刚还相互拥抱,转眼已各自天涯。很多时候,你不懂,我也不懂,就这样,说着说着就变了,听着听着就倦了,看着看着就厌了,跟着跟着就慢了,走着走着就散了,爱着爱着就淡了,想着想着就算了。
头像
tosail2010
帖子: 83
注册时间: 2011-03-27 19:01
联系:

Re: $PATH与$(PATH)与${PATH}有什么区别?

#7

帖子 tosail2010 » 2011-06-29 9:10

楼上2位的说法本身是正确的,但是并没有结合我的提问去回答。

$(xxxx),命令替换。
xxxx - 小写(因为是命令,大写代表变量)
我理解是这样的
A year's plan starts with spring.
头像
fanhe
帖子: 2357
注册时间: 2007-03-24 23:45

Re: $PATH与$(PATH)与${PATH}有什么区别?

#8

帖子 fanhe » 2011-07-01 0:25

楼主我跟你说清楚
在 makefile 里面, $(PATH) 和 ${PATH} 是一样的, $PATH 是灵异的, 不应该这样用
在 shell 里面, ${PATH} 和 $PATH 是一样的, $(PATH) 是表示 'PATH' 这个命令的输出

linux 下大小写敏感, a 和 A 代表不同的东西
还有, 没有大写代表变量这个说法, 大小写都可以, 只要符合标识符的规则, 既可以是变量也可以是命令, 要看语境
头像
tosail2010
帖子: 83
注册时间: 2011-03-27 19:01
联系:

Re: $PATH与$(PATH)与${PATH}有什么区别?

#9

帖子 tosail2010 » 2011-07-02 11:13

fanhe 写了:楼主我跟你说清楚
在 makefile 里面, $(PATH) 和 ${PATH} 是一样的, $PATH 是灵异的, 不应该这样用
在 shell 里面, ${PATH} 和 $PATH 是一样的, $(PATH) 是表示 'PATH' 这个命令的输出

linux 下大小写敏感, a 和 A 代表不同的东西
还有, 没有大写代表变量这个说法, 大小写都可以, 只要符合标识符的规则, 既可以是变量也可以是命令, 要看语境
透彻,多谢。
A year's plan starts with spring.
1qa2ws3ed
帖子: 159
注册时间: 2011-06-29 19:18
系统: Archlinux

Re: $PATH与$(PATH)与${PATH}有什么区别?

#10

帖子 1qa2ws3ed » 2011-07-02 11:26

学习了
Ubuntu Linux, Linux for human beings.
回复