$(...)和`...`之间的区别是什么
问题描述:
问题与标题所述的一样简单:以下两个表达式有什么区别?
$(...)
`...`
例如,是两个变量test1
和test2
不同?
test1=$(ls)
test2=`ls`
答
您可能需要阅读man bash
:
当使用替代旧式的反引号的形式,反斜杠其次当$,`,或者只是其字面含义。不带反斜杠的第一个反引号将终止命令替换。使用$(command)形式时,括号之间的所有字符构成命令;没有人专门处理。
这是在手册页的“命令替换”部分。
@theman:谢谢你的“有见识”的评论。 – 2009-02-25 11:37:08
请注意,这不只是bash。这适用于ksh和普通的旧sh(即使在sh中也不是变相的bash)。 – dwc 2009-02-26 22:09:05