更好地引用shell脚本执行命令
问题描述:
我对这种差异感到怀疑,哪一个是在shell脚本中执行命令更好的引用。更好地引用shell脚本执行命令
例如,我有这样两个例子:
echo "The name of the computer is `uname -n`"
echo "The name of the computer is $(uname -n)"
哪一个更好?或者没有不同?
答
一般推荐使用$(...)
,因为它嵌套更容易。比较:
date -d "1970-01-01 $(echo "$(date +%s)-3600"|bc) sec UTC"
date -d "1970-01-01 `echo \"\`date +%s\`-3600\"|bc` sec UTC "
+1它也很容易将反引号与单引号混淆一瞥。有关更多信息,请参阅[为什么$(...)优于反引号?](http://mywiki.wooledge.org/BashFAQ/082“BashFAQ/082”)。 – 2011-02-13 00:00:22