2013-07-23 3 views
0

Я пытаюсь объединить все файлы a, который заканчивается расширением coref.find + xargs + cat не работает с аргументом --name

Это работает (но добавлять ненужные файлы):

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

Это не работает.

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

Во втором comand find возвращается 1566 результатов, но xrags cat ничего не делает.

Почему аргументы -name испортили все это?

ответ

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