[linux-l] Einfaches Shellscript zum Umbenennen vieler Dateien gesucht
Norman Steinbach
norm at nsteinbach.de
Do Mai 16 01:02:01 CEST 2019
Hallo Linux-Liste,
ich suche ein Shellscript, welches viele Dateien in vielen
Unterverzeichnissen rekursiv jeweils so umbenennt, dass das letzte
Zeichen der Dateiendung gelöscht wird. Dieses Zeichen ist immer ein
Unterstrich "_", und der soll weg.
Hintergrund: Ich sichere gerade von einem übervollen Samsung-Handy Daten
auf eine externe Festplatte. Das klappte per MTP nicht so, wie es
sollte, weil jeweils zu lange gebraucht wird, um den Verzeichnisinhalt
im Gerätespeicher einzulesen. Der Workaround ist gewesen, per
"SmartSwitch" die Dateien (in erster Linie Tausende von Bildern) auf die
SD-Karte zu sichern, von wo sie sich dann problemlos kopieren lassen.
Diese Backup-Äpp benennt die Dateien jedoch immer so um, dass sie an den
jeweiligen Dateinamen einen Unterstrich dran hängt.
Da die Daten jedoch nicht als Backup in das Handy zurückgespielt werden
sollen, sondern vom PC aus (unter Windows - das hat es überhaupt nicht
hingekriegt mit der Sicherung) genutzt werden sollen, müssen die
Dateinamen, um nun wieder "verwertbar" zu sein, alle wieder in ihr
ordentliches Format gebracht werden, d.h. "dateiname.jpg_" muss wieder
zu "dateiname.jpg" werden, bei allen anderen Endungen analog (z.B.
".mp4_" bei Videos zu ".mp4", oder ".pdf_" zu ".pdf" usw.)
Hierfür gibt es sicherlich eine schöne, einfache Methode, das per
Shell-Script zu automatisieren - nur dass ich leider nie gelernt habe,
Shell-Scripte selbst zu entwickeln, weshalb ich hier um Hilfe bitten möchte.
Falls das mit der Rekursion in die Unterverzeichnisse nicht
funktioniert, wäre auch eine Variante "im aktuellen Verzeichnis"
ausreichend, da nicht so viele davon relevante Daten enthalten, und der
Rest eh wegfliegt.
Danke & viele Grüße,
Norman
Mehr Informationen über die Mailingliste linux-l