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
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: (...). Die Nummer soll nun aus dem Dateinamen weg, hinterher soll das so aussehen: (...).
Installier das Paket mmv. Dann zum Probieren ohne tatsächlich umzubenennen (-n für no-execute): mmv -n "*_*" "#2" Wenn noch andere Dateien in diesem Verzeichnis sind die ein _ im Namen haben, musst du spezifischer werden. Beispielsweise: mmv -n "*_*.jpg" "#2.jpg" mmv -n "[0-9][0-9][0-9][0-9][0-9]_*" "#6" mmv -n "[0-9][0-9][0-9][0-9][0-9]_*.jpg" "#6.jpg" Das Prinzip sollte klar sein ... sobald alles gut aussieht, einfach das -n wegnehmen. Wenn du es eher grafisch magst, installier krename. Das kann dann alles mögliche als Zielnamen benutzen, auch Exif-Informationen. Gruß Jan -- Reading is sometimes an ingenious device for avoiding thought. -- 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
Am 06.12.2017 um 21:04 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
Hallo Jürgen, probiere doch mal folgendes (Konsole): for i in $(ls -1) ; do mv ${i} ${i#*_} ; done Cheers -- Christian ------------------------------------------------------------ https://join.worldcommunitygrid.org?recruiterId=177038 ------------------------------------------------------------ http://www.sc24.de - Sportbekleidung ------------------------------------------------------------ -- 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
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
Hallo, es gab mal ein Programm namens krename mit graphischer Oberfläche das das konnte. Da konnte man solange an den EINstellngen spielen bis alles passte und das alles ausführen. Vielleicht findest Du das Programm irgendwo. Gruß Karl Am 06.12.2017 um 21:04 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
Am Mittwoch, 6. Dezember 2017, 21:53:04 CET schrieb Karl Sinn:
Hallo, Moin! es gab mal ein Programm namens krename mit graphischer Oberfläche das das konnte. Da konnte man solange an den EINstellngen spielen bis alles passte und das alles ausführen. Vielleicht findest Du das Programm irgendwo.
Gibt's noch, ich nutze es für genau solche Aufgaben. Paketgruppe: Productivity/File utilities Einfach unter Yast mal suchen.
Gruß Karl
Am 06.12.2017 um 21:04 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
-- Keinem vernünftigen Menschen wird es einfallen, Tintenflecken mit Tinte, Ölflecken mit Öl wegwaschen zu wollen. Nur Blut soll immer wieder mit Blut abgewaschen werden. (Bertha von Suttner) -- 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
Hallo, erst einmal vielen Dank für die Infos. Von der Sache her funktioniert sowohl das Script von Christian als auch vie Variante mit mmv. Allerdings hatte ich dabei nicht weit genug gedacht, so daß ich letztendlich doch ein kleines PHP-Script geschrieben habe. Hintergrund ist, daß der 2. Wert im Dateinamen (also zwischen dem Unterstrich und der Endung) ein dezimaler Zahlenwert ist, nachdem die Dateien sortiert werden sollen. 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
Am 06.12.2017 um 23:59 schrieb Jürgen Hochwald:
Hallo,
erst einmal vielen Dank für die Infos.
Von der Sache her funktioniert sowohl das Script von Christian als auch vie Variante mit mmv.
Allerdings hatte ich dabei nicht weit genug gedacht, so daß ich letztendlich doch ein kleines PHP-Script geschrieben habe. Hintergrund ist, daß der 2. Wert im Dateinamen (also zwischen dem Unterstrich und der Endung) ein dezimaler Zahlenwert ist, nachdem die Dateien sortiert werden sollen. Und was hat die Sortiererei mit dem Umbenennen zu tun?
Manfred -- 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
Hi und noch ein Tipp. Es handelt sich ja um JPG-Dateien, da kann man auch mit jhead - Digicam JPEG Exif header manipulation tool schön die Dateinamen ändern, inbes. kann man auch das Aufnahmedatum aus dem EXIF-Header benutzen, und nummerieren lassen etc. z.B. jhead -n"abc-%Y-%m-%d-%H:%M:%S-%03i-efg" *.JPG ergibt als Dateiname abc-JAHR-MONAT-TAG-STUNDE-MINUTE:SEKUNDE-XXX.efg.jpg wobei XXX eine dreistellige fortlaufende Nr ist Jürgen Am Mittwoch, 6. Dezember 2017, 21:04:25 CET schrieben Sie:
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
-- Dr.rer.nat. Jürgen Vollmer, Am Rennbuckel 21, D-76185 Karlsruhe Tel: +49(721) 92 04 87 1 Fax: +49(721) 92 04 87 2 Juergen.Vollmer@informatik-vollmer.de www.informatik-vollmer.de ------------------------------------------------------------------------------- Diese EMail ist elektronisch mittels GPG / PGP signiert. Diese elektronische Unterschrift ist in einem EMail-Anhang enthalten. Leider kann die Signatur ohne die Installation entsprechender Programme weder geprüft noch angezeigt werden. Mehr dazu unter: http://www.gnupg.org oder auch http://www.pgpi.org ------------------------------------------------------------------------------- -- 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
Am 07.12.2017 um 07:56 schrieb Dr. Jürgen Vollmer:
Hi
und noch ein Tipp. Es handelt sich ja um JPG-Dateien, da kann man auch mit jhead - Digicam JPEG Exif header manipulation tool schön die Dateinamen ändern, inbes. kann man auch das Aufnahmedatum aus dem EXIF-Header benutzen, und nummerieren lassen etc.
z.B.
jhead -n"abc-%Y-%m-%d-%H:%M:%S-%03i-efg" *.JPG
ergibt als Dateiname abc-JAHR-MONAT-TAG-STUNDE-MINUTE:SEKUNDE-XXX.efg.jpg wobei XXX eine dreistellige fortlaufende Nr ist
meine 2 EuroCent dazu: Ich würde noch %f also den originalen Filenamen zum Ende hinzunehmen, um Kollisionen mit mehreren Kameras auszuschließen. Und noch eine Frage: %H:%M:%S ist problematisch, wenn man Dateien mit SD-Karten oder Windows-Systemen tauschen will, denn der Doppelpunkt ist im alten FAT-Filesystem nicht erlaubt. @Dr. Jürgen Vollmer: Wie konvertierst Du die Files, wenn diese auf USB-Stick oder SD-Karten kommen sollen? -- Michael Riess -- 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
Hi Am Donnerstag, 7. Dezember 2017, 09:50:53 CET schrieben Sie:
Am 07.12.2017 um 07:56 schrieb Dr. Jürgen Vollmer:
Hi
und noch ein Tipp. Es handelt sich ja um JPG-Dateien, da kann man auch mit jhead - Digicam JPEG Exif header manipulation tool schön die Dateinamen ändern, inbes. kann man auch das Aufnahmedatum aus dem EXIF-Header benutzen, und nummerieren lassen etc.
z.B.
jhead -n"abc-%Y-%m-%d-%H:%M:%S-%03i-efg" *.JPG
ergibt als Dateiname abc-JAHR-MONAT-TAG-STUNDE-MINUTE:SEKUNDE-XXX.efg.jpg wobei XXX eine dreistellige fortlaufende Nr ist
meine 2 EuroCent dazu: Ich würde noch %f also den originalen Filenamen zum Ende hinzunehmen, um Kollisionen mit mehreren Kameras auszuschließen.
Und noch eine Frage: %H:%M:%S ist problematisch, wenn man Dateien mit SD-Karten oder Windows-Systemen tauschen will, denn der Doppelpunkt ist im alten FAT-Filesystem nicht erlaubt.
@Dr. Jürgen Vollmer: Wie konvertierst Du die Files, wenn diese auf USB-Stick oder SD-Karten kommen sollen?
mach ich nie :-) mein Linux-Server ist mein "Datengrab" Klar, wenn's mal USB sein muss dann ohne : oder als ZIP für den Austausch Jürgen -- Dr.rer.nat. Jürgen Vollmer, Am Rennbuckel 21, D-76185 Karlsruhe Tel: +49(721) 92 04 87 1 Fax: +49(721) 92 04 87 2 Juergen.Vollmer@informatik-vollmer.de www.informatik-vollmer.de ------------------------------------------------------------------------------- Diese EMail ist elektronisch mittels GPG / PGP signiert. Diese elektronische Unterschrift ist in einem EMail-Anhang enthalten. Leider kann die Signatur ohne die Installation entsprechender Programme weder geprüft noch angezeigt werden. Mehr dazu unter: http://www.gnupg.org oder auch http://www.pgpi.org ------------------------------------------------------------------------------- -- 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
Hallo for i in *; do mv "$i" "$(echo $i | sed -r 's/[0-9]{5}_//g')"; done Am Mittwoch, 6. Dezember 2017, 21:04:25 CET schrieb Jürgen Hochwald:
00007_1.72e24211.jpg
Die Nummer soll nun aus dem Dateinamen weg, hinterher soll das so aussehen:
1.72e24211.jpg
-- 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
Am 06.12.2017 um 21:04 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 ...
1.85e24220.jpg 5.79e24218.jpg
"krename" wurde schon erwähnt und ich verwende es bei Bildern. Aus Exif-Daten kann "exifExif.Photo.DateTimeOriginal" herausziehen und eine sinnvolle Bezeichnungen hinzufügen. Dein "00001_1.85e24220.jpg" wird z.B. zu 00001_yyyymmdd_hhmmss.jpg und dann zu yyyymmdd_hhmmss_wasauchimmer.jpg Die Nummerierung ist damit für jedes Foto eindeutig. Wenn du mehrere Bilder pro Sekunde hast, bietet sich an und ist machbar yyyymmdd_hhmmssNN_wasauchimmer.jpg Gruß Peter -- 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
Hallo, hier noch ein kleiner Nachtrag zu dem Problem: Bei den Dateien handelt es sich NICHT um Bilder einer Kamera oder so und hat damit auch keine brauchbaren Exif-Daten. Die Bilder stammen von einem Fraktal-Programm und sollen mit ffmpeg o.ä. zu einem Video umgewandelt werden. Die Lösung war letzendlich ein
mmv -n "*_*e*.*" "00#3_#2.#4
das den Dateinamen entspr. umformattiert und ich damit eine Sortierung nach Zoomfaktor (vom Mandelbrot) erhalte. noch frohe Festtage und einen guten Rutsch 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
participants (11)
-
Christian
-
Dr. Jürgen Vollmer
-
hjk
-
Jan Ritzerfeld
-
Jürgen Hochwald
-
Karl Sinn
-
Manfred Kreisl
-
Michael Rieß
-
Mike Philipp
-
Peter Mc Donough
-
Ulrich Walter