如何查看目录中所有文件的前30行(或头部)?

ret*_*n 0 1 linux

如果我在目录中有30多个文件 /a.cpp /b.cpp /c.cpp ...

将所有文件的头部(前n行)导出到一个文档中的最快方法是什么?

谢谢.

hek*_*mgl 6

你可以使用globbing:

head -n 10 *.cpp > all_headers.txt
Run Code Online (Sandbox Code Playgroud)

上面的命令将文件夹中所有cpp文件的前10行导出到all_headers.txt.

根据Aereaux的评论,您还应该使用-q选项,head否则head会在n行之前打印文件名.它应该是:

head -qn 10 *.cpp > all_headers.txt
Run Code Online (Sandbox Code Playgroud)

另一件事.根据文件的数量,使用globbing可能会导致参数列表head变得太长.对于可以使用任意数量文件的稳定解决方案,我会使用find:

find -maxdepth 1 -name '*.cpp' -exec head -qn 10 {} +
Run Code Online (Sandbox Code Playgroud)