差异b / w使用`command` vs($(command))在bash中输出到数组

时间:2013-01-29 06:35:52

标签: bash unix

这两个命令和输出变量的区别是什么:

output=($(command))

output=`command`

2 个答案:

答案 0 :(得分:4)

在第一种情况下,结果变量是一个数组,元素的数量取决于命令的输出。在第二种情况下,它是包含完整结果值的标量。这种差异仅仅是由于第一种情况下额外的外支架。

尝试使用例如ls命令来查看差异。

此外,$(command)表单已取代'command'表单以替换命令。

答案 1 :(得分:1)

唯一的区别是$()调用可以嵌套,AFAIR(好吧,反引号也可以嵌套,但你必须转义所有嵌套的反引号,所以$()提供了更好的语法)。