Bash:组合多个命令的输出

时间:2017-12-20 01:26:52

标签: linux bash macos grep comm

我正在尝试执行以下操作 1.查找包含单词gold的所有文件 2.查找包含单词sheep的所有文件 3.找到上面的1和2的交集(那些包含单词gold and sheep的文件)

以下是我在bash中尝试这样做的方法

comm -12i < (grep -l gold * | sort) < (grep -l sheep * | sort)

但是我收到以下错误

-bash: syntax error near unexpected token `('

&#39;之后的空间(&#39;没有帮助,也没有取下它。为什么这是一个问题,我该如何解决?

1 个答案:

答案 0 :(得分:1)

你非常接近:

  

'之后的空格,'没有帮助,也没有把它取下。为什么这是一个问题,我该如何解决?

(前面的空格必须删除。

comm -12 <(grep -l gold * | sort) <(grep -l sheep * | sort)

在我的系统comm上没有-i选项,因此我也删除了i