Ваш конечный head
останавливается после 42 строк общего вывода, но вы хотите, чтобы он работал для каждого файла. В xargs
:
можно подделать подоболочку
xargs -0 -I{} bash -c 'cut -f3-5 "$1" | head -n 42' _ {} > summary.5runs.txt
или вы можете сделать его частью действия -exec
:
find . -type f -iname "ww.*.out.txt" \
-exec bash -c 'cut -f3-5 "$1" | head -n 42' _ {} \; > summary.5runs.txt
В качестве альтернативы, вы можете перебрать все файлы в подоболочке, поэтому вам нужно создать только один:
find . -type f -iname "ww.*.out.txt" \
-exec bash -c 'for f; do cut -f3-5 "$f" | head -n 42; done' _ {} + \
> summary.5runs.txt
Обратите внимание на {} +
вместо {} \;
.