Hallo Debianer,
ich brauche einen Tip zur Bash.
Ich moechte Dateien umbenennen und zwar nicht nur im aktuellen
Verzeichnis sondern rekursiv in allen Unterverzeichnissen.
Im aktuellen Verzeichnis ist das klar, aber wie kann ich die
Unterverzeichnisse haendeln.
Gruss aus dem Schwarzen Wald,
Mato
dateien_umbenennen
Re: dateien_umbenennen
Einfach find in eine for Schleife packen:
Gruß Alex
Code: Alles auswählen
for datei in $(find -name 'pattern'); do
mv $datei ${datei}_neu
done
[[ Black Holes are where God devided by 0 ]]
Re: dateien_umbenennen
Da bekommt man Probleme mit bekloppten Pfaden, die Leerzeichen enthalten. Stattdessen bietet sich -exec an:Die Unterschiede: -type f grenzt auf Dateien ein, -iname ignoriert Gross/Kleinschreibung; {} wird durch den aktuellen Dateinamen ersetzt. Das abschliessende \; beendet den Shellbefehl.
Gruss Cae
Code: Alles auswählen
$ find /path/to/target -type f -iname 'pattern' -exec mv '{}' '{}_neu' \;
Gruss Cae
If universal surveillance were the answer, lots of us would have moved to the former East Germany. If surveillance cameras were the answer, camera-happy London, with something like 500,000 of them at a cost of $700 million, would be the safest city on the planet.
—Bruce Schneier
Re: dateien_umbenennen
Hallo Alex,
hallo Cae,
grossartig, das werde ich so schnell wie moeglich ausprobieren.
Find ist der Schluessel zum Erfolg.
Vielen Dank.
Gruss aus dem Schwarzen Wald,
Mato
hallo Cae,
grossartig, das werde ich so schnell wie moeglich ausprobieren.
Find ist der Schluessel zum Erfolg.
Vielen Dank.
Gruss aus dem Schwarzen Wald,
Mato