find + xargs + cat不能与--name参数一起使用

时间:2013-07-23 18:35:08

标签: find cat xargs

我正在尝试连接以coref扩展名结尾的所有文件。

这可行(但添加不需要的文件):

find ../corpus/dev/txt/ | xargs cat

这不起作用。

find ../corpus/dev/txt/ -name '*.coref' | xargs cat

在第二个命令中找到返回1566的结果,但是xrags cat什么也没做。

为什么-name参数会弄乱它?

1 个答案:

答案 0 :(得分:0)

尝试使用-print0,如下所示:

  find ../corpus/dev/txt/ -name '*.coref' -print0 | xargs -0 cat

如果你发现很多文件并且xargs列表太长,你可以试试这个:

  find ../corpus/dev/txt/ -name '*.coref' -print0 | xargs -n1 -0 cat >> /tmp/file