• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[solved] Bash-Skript um mehrere Datein in Ordner zu bearbeit

Hallo,

ich möchte folgenden Befehl auf alle Dateiein in einem Ordner besser noch alle Unterordnern des Ordners anwenden, habe aber keine Idee wie ich das mittels eines Bash-Skriptes hinbekomme. Wer kann mir da weiterhelfen?


composite -watermark 5x50 -gravity Center name.jpg digi0237_43.jpg digi0237_43_new.jpg

digi0237_43.jpg eine Datei aus dem Ordner
digi0237_43_new.jpg soll die neu generierte Datei heißen, als alter Name zzgl. _new


Günstig wäre, wenn ich name.jpg und den Ordner, der durchsucht werden soll, als Parameter an das Skript übergeben könnte.

Viele Grüße und Dank im Voraus.

Knut
 
Hallo

Ich probiere mal einen Versuch, aber ich bitte dich den Vorschlag nochmal kritisch zu hinterfragen:
---------------------------------------------------------------
for datei in `find /DEINoRDNER/ -name "*.jpg"`
do
DEINbEFEHL ${datei}
done
---------------------------------------------------------------


Wenn du das new dabei haben willst geht das relativ einfach mit einem mv , wenn du es davor oder dahinter setzt:
mv ${datei} new${datei}
oder
mv ${datei} ${datei}new
Wenn du es dazwischen haben willst wirds deutlich komplizierter. Da müsste ich nochmal über meinem Buch brüten wie das geht.

Gruß Peter
 
Hallo Peter,

danke für den Tipp. Brauchst auch nicht weiter zu brüten, das new vor dem Dateinamen reicht vollkommen aus. Wollte nur nicht die alten Dateien überschreiben.

lg.k.
 
http://www.linux-user.de/ausgabe/2001/09/094-volker/umzug.html zeigt dir die Anwendung des Programms mmv. Meiner Meinung nach das Beste um Dateien in der geforderten Weise umzubenennen.
 
trommelpeter schrieb:
for datei in `find /DEINoRDNER/ -name "*.jpg"`
do
DEINbEFEHL ${datei}
done
Als abkürzung kann man auch den Parameter -exec von find benutzen. Ist ein nützlicher Parameter, falls es mal um etwas anderes geht als um Umbenennen.
 
Hallo

Als abkürzung kann man auch den Parameter -exec von find benutzen. Ist ein nützlicher Parameter, falls es mal um etwas anderes geht als um Umbenennen.

Na gut . Ich habe das noch nicht so ganz raus, wann was angebracht ist.
Habs im Buch "Shell-Skript Programmierung" von Patrick Ditchen jetzt erstmal bis Seite 244 geschafft,
und weis nicht ob ich alles so wirklich verstanden habe :)

Gruß Peter :)
 
notoxp schrieb:
trommelpeter schrieb:
for datei in `find /DEINoRDNER/ -name "*.jpg"`
do
DEINbEFEHL ${datei}
done
Als abkürzung kann man auch den Parameter -exec von find benutzen. Ist ein nützlicher Parameter, falls es mal um etwas anderes geht als um Umbenennen.
for `` ist normalerweise nicht leerzeichen- oder newline-fest. In dem Falle exec oder xargs.
 
Oben