为什么使用 `xargs head` 命令会打印文件名?

3

给定两个文件,a.txt 的内容为:A1b.txt 的内容为:B1

执行命令 printf "a.txt\nb.txt" | xargs head -1,希望输出:

A1
B1

但是输出结果为:
==> a.txt <==
A1

==> b.txt <==
B1

为什么会输出文件名?如何禁用文件名的输出?
1个回答

5

head执行时带有多个参数,这会导致输出文件名。来自head手册

当有多个FILE时,在每个文件之前加上文件名的标题。

可以使用--quiet选项来禁止显示标题:

printf "a.txt\nb.txt" | xargs head -1 --quiet

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接