Gibt es einen Befehl, um den Verzeichnis-/Dateinamen bei cat-Dateien anzuzeigen?
Zum Beispiel:Angenommen, zwei Dateien f1.txt und f2.txt sind unter ./tmp
./tmp/f1.txt
./tmp/f2.txt
Wenn ich dann cat ./tmp/*.txt mache , nur der Inhalt von Dateien wird angezeigt. Aber wie zeigt man zuerst den Dateinamen und dann den Inhalt an?, z. B.:
(The needed command):
./tmp/f1.txt:
This is from f1.txt
and so on
./tmp/f1.txt:
This is from f2.txt ...
Gibt es dafür einen Befehl? (Es scheint keine Option für ‚cat‘ zu geben, um die Dateinamen anzuzeigen)
Akzeptierte Antwort:
$ for file in ./tmp/*.txt; do echo "$file"; cat "$file"; done
-oder-
$ find ./tmp -maxdepth 1 -name "*.txt" -print -exec cat "{}" ;