Bash递归捕获命令输出

时间:2013-08-05 07:46:19

标签: linux bash

我想捕获一个命令输出并将其存储在变量中,但我想多做一次。

例如,id'e喜欢做类似的事情:

base=`basename `readlink link``

当我尝试这个时,我收到一个错误:

basename: missing operand

建议?

由于

1 个答案:

答案 0 :(得分:2)

使用美元括号语法递归捕获命令输出:

base=$(basename $(readlink link))

反向滴答的问题是,当解释器遇到第二个反向滴答时,解释器认为反向滴答关闭第一个命令,而你想要的是打开一个新命令。