0
firefox $(grep -l "mysed" /home/test)  

该命令可以打开我所有包含 mysed firefox中单词的文件,当我将命令更改为以下内容时,

grep -l "mysed" /home/test |  firefox 

为什么firefox无法打开grep选择的文件?

4

2 回答 2

3

因为管道不应用参数。管道将标准输出从一个进程重定向到另一个进程的标准输入。

您可以使用xargs来实现您想要的:

grep -l "mysed" /home/test | xargs firefox 
于 2012-10-07T01:43:26.223 回答
0

第一个命令将要打开的文件作为命令行参数提供给 Firefox,而第二个命令在 Firefox 的 STDIN 上提供它们不解释,因此无法打开它们。

于 2012-10-07T01:45:06.300 回答