Hi, ganz billiges Bash-Scriptlet: for i in * do NEWNAME=${i#*_} echo mv -v "$i" "$NEWNAME" done Das Scriptlet itteriert über alle Dateien im aktuellen Verzeichnis: for i in * do echo ":$i:" done und gibt die Dateinamen ($i) mit :Dateiname: aus in der Schleife wird NEWNAME aus dem Namen der Datei $i, vom Beginn der Variable $i an bis zum ersten '_' alles gelöscht. Der anschließende mv ersetzt den Inhalt (Dateiname) von $i durch $NEWNAME. Wenn die Ausgabe des Scriptlets, das ausgibt was Du möchtest dann kannst Du das Scriptlet durch weglassen von echo (vor dem mv) scharf schalten. Grüße Mike Am Mittwoch, 6. Dezember 2017, 21:04:25 CET schrieb Jürgen Hochwald:
Hallo,
ich habe aktuell ein (kleines) Problem, für das ich keine Lösung habe:
Gegeben ist eine größere Anzahl an Dateien, wo der Dateiname die Form ######_AAAAAA.XXX hat. ###### ist dabei eine Nummer, AAAAA.XXX ist der normale Dateiname. zB so:
00001_1.85e24220.jpg 00002_5.79e24218.jpg 00003_1.81e24217.jpg 00004_5.66e24215.jpg 00005_1.76e24214.jpg 00006_5.53e24212.jpg 00007_1.72e24211.jpg
Die Nummer soll nun aus dem Dateinamen weg, hinterher soll das so aussehen:
1.85e24220.jpg 5.79e24218.jpg 1.81e24217.jpg 5.66e24215.jpg 1.76e24214.jpg 5.53e24212.jpg 1.72e24211.jpg
Hat jemand einen Tip, wie ich das am geschicktesten hinkriege (evtl. mit dem Midnight Commander), bevor ich großartig was mit php oder so programmiere ?
Jürgen
-- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org