Sie können find
verwenden (Manpage), um dies zu erreichen:
find -name "*.java" -exec cat {} \;
Sie können auch eine -print
hinzufügen vor dem -exec
den Dateinamen vor jeder cat-Operation auszugeben
find . -name "*.java" -print0 | xargs -0 cat
shopt -s globstar
cat **/*.java >> all_course.txt
Diese all_course-Datei wird ein bisschen chaotisch sein. Wahrscheinlich möchten Sie einige Kopf- oder Fußzeilen hinzufügen:
for f in **/*.java; do
echo "/* *********************************"
echo " * $f"
echo " * *********************************/"
echo ""
cat "$f"
echo ""
echo "/* *********************************"
echo " * $f"
echo " * *********************************/"
echo ""
echo ""
done > all_course.txt