Wie benenne ich alle Elemente in Dateien im Ordner im Ordner im Ordner um?

512
kay

Ich verwende ein MacOS X. Ich weiß, dass dieser Code im Terminal alle TXT-Dateien, die "Hallo" enthalten, durch "HiThere" im Ordner "World" ersetzt:

perl -pi -w -e 's/hello/hiThere/g;' ~/Desktop/world/*.txt 

In diesem Weltordner befinden sich jedoch andere Ordner, in denen sich weitere TXT-Dateien befinden. Diese Dateien werden nicht durch den Refactor oder das Umbenennen durchlaufen. Sie müssen dann die zusätzlichen Ordner mit der obigen Methode einzeln eingeben.

Gibt es eine Methode, die es automatisch für Sie erledigt?

0

1 Antwort auf die Frage

0
Gilles Quenot

Benutze das :

find main_dir -type f -name '*.txt' -exec perl -pi -w -e 's/hello/hiThere/g;' {} \; 

Ersetzen Sie main_dirdurch Ihr Hauptverzeichnis

Wo im Befehl gebe ich den übergeordneten Ordner ein? dh "Desktop / Welt /"? kay vor 6 Jahren 0
Es ist "main_dir" Gilles Quenot vor 6 Jahren 0
main_dir ersetzen ... Durch Ihr eigenes Hauptverzeichnis Gilles Quenot vor 6 Jahren 0
@ fixer1234 Dies ist fertig Gilles Quenot vor 6 Jahren 0