Gibt es einen Befehl, um ein Verzeichnis nach Dateien zu durchsuchen und das Ergebnis in eine Datei mit einem Präfixtext vor dem Namen der gefundenen Datei auszugeben?
Zum Beispiel habe ich ein Verzeichnis mit diesen Dateien:
sound1
sound2
sound3
…
Geben Sie dann einen Befehl ein, um das Verzeichnis zu durchsuchen, und schreiben Sie die Ergebnisse in eine Textdatei mit einem vorangestellten Präfix, z. B.
media sound1
media sound2
media sound3
…
Bonusfrage
Gibt es eine Möglichkeit, „media1“, „media 2“ usw. anstatt nur „media“ in eine vorhandene Textdatei zu schreiben, ohne zu löschen, was sich vorher in dieser Textdatei befand?
media1 sound1
media2 sound2
media3 sound3
…
Akzeptierte Antwort:
Das soll helfen:
find /path/to/sound/files -type f -name "sound[0-9]" -printf 'media %f\n' > file.txt
Informationen:
sound[0-9]
:Suchen Sie nach Dateien mit Namen, die sound
haben und endet mit einer Zahl
-printf 'media %f\n'
:Formatieren Sie den Dateinamen mit dem Präfix media.
> file.txt
:Senden Sie es an eine Datei namens file.txt.