如何递归显示文件内容?

use*_*209 9 linux unix bash ls cat

我总是必须在打印的作业报告中提交源代码。我必须将我的课程代码复制并粘贴到文档中,我发现这是一项烦人的任务。

我想解决这个“复制和粘贴”问题。因此,我是这样做的cat,但它仅适用于当前目录。我希望它可以递归显示文件内容。

ls -R *.java | xargs cat >> all_course.txt
Run Code Online (Sandbox Code Playgroud)

小智 15

您可以使用find手册页)来完成此操作:

find -name "*.java" -exec cat {} \;
Run Code Online (Sandbox Code Playgroud)

您还可以添加一个-print-exec给每只猫操作之前打印文件名


小智 9

find . -name "*.java" -print0 | xargs -0 cat 
Run Code Online (Sandbox Code Playgroud)