{"id":1237,"date":"2023-07-24T19:25:39","date_gmt":"2023-07-24T17:25:39","guid":{"rendered":"https:\/\/www.mediamill.de\/blog\/?p=1237"},"modified":"2023-07-24T19:25:40","modified_gmt":"2023-07-24T17:25:40","slug":"fuehrende-nullen-in-dateinamen-unter-linux-hinzufuegen","status":"publish","type":"post","link":"https:\/\/www.mediamill.de\/blog\/2023\/07\/24\/fuehrende-nullen-in-dateinamen-unter-linux-hinzufuegen\/","title":{"rendered":"F\u00fchrende Nullen in Dateinamen unter Linux hinzuf\u00fcgen"},"content":{"rendered":"\n<p>Wenn Sie viele Dateien haben, die durchnummeriert sind, aber ohne f\u00fchrende Nullen, kann die Sortierung manchmal durcheinander geraten. Ein typisches Beispiel k\u00f6nnte eine Sammlung von Bilddateien sein, die als <code>img_1.jpg<\/code>, <code>img_2.jpg<\/code>, <code>img_100.jpg<\/code> usw. nummeriert sind. In diesem Fall wird <code>img_100.jpg<\/code> vor <code>img_2.jpg<\/code> sortiert, da die Sortierung als Zeichenkette und nicht numerisch erfolgt.<\/p>\n\n\n\n<p>Dieses Problem l\u00e4sst sich l\u00f6sen, indem man ein einfaches Bash-Skript verwendet, das durch alle Dateien geht und diejenigen umbenennt, die weniger als eine bestimmte Anzahl von Ziffern in ihrem Namen haben, in unserem Fall drei. Hier ist, wie Sie das tun k\u00f6nnen:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>for file in img_*.jpg; do\r\n    # Extrahiere die Nummer aus dem Dateinamen\r\n    num=$(echo $file | grep -o -E '&#91;0-9]+')\r\n\r\n    # \u00dcberpr\u00fcfe, ob die Nummer weniger als 3 Stellen hat\r\n    if &#91; ${#num} -lt 3 ]; then\r\n        # F\u00fcge f\u00fchrende Nullen hinzu, um die L\u00e4nge auf 3 zu bringen\r\n        new_num=$(printf \"%03d\" $num)\r\n\r\n        # Generiere den neuen Dateinamen\r\n        new_file=\"img_${new_num}.jpg\"\r\n\r\n        # Umbenennen der Datei\r\n        mv $file $new_file\r\n    fi\r\ndone\r\n<\/code><\/pre>\n\n\n\n<p>Dieses Skript extrahiert den numerischen Teil jedes Dateinamens, pr\u00fcft seine L\u00e4nge und f\u00fcgt gegebenenfalls f\u00fchrende Nullen hinzu, um die L\u00e4nge auf drei Stellen zu bringen. Es ignoriert Dateien, die bereits eine dreistellige Nummer haben.<\/p>\n\n\n\n<p>Bitte beachten Sie, dass das Skript davon ausgeht, dass alle Ihre Dateien im Format <code>img_N.jpg<\/code> vorliegen, wobei <code>N<\/code> eine Zahl ohne f\u00fchrende Nullen ist. Wenn Ihr Dateiformat abweicht, m\u00fcssen Sie das Skript entsprechend anpassen.<\/p>\n\n\n\n<p>Zudem sollten Sie beachten, dass dieses Skript keine Sicherheitsma\u00dfnahmen implementiert, um sicherzustellen, dass keine Dateien \u00fcberschrieben werden. Stellen Sie daher sicher, dass Sie eine Sicherungskopie Ihrer Dateien haben, bevor Sie das Skript ausf\u00fchren.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Wenn Sie viele Dateien haben, die durchnummeriert sind, aber ohne f\u00fchrende Nullen, kann die Sortierung manchmal durcheinander geraten. Ein typisches Beispiel k\u00f6nnte eine Sammlung von Bilddateien sein, die als img_1.jpg, img_2.jpg, img_100.jpg usw. nummeriert sind. In diesem Fall wird img_100.jpg vor img_2.jpg sortiert, da die Sortierung als Zeichenkette und nicht numerisch erfolgt. Dieses Problem l\u00e4sst [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[52,28],"tags":[134,135],"class_list":["post-1237","post","type-post","status-publish","format-standard","hentry","category-bash","category-bash-snippets","tag-bash","tag-linux"],"_links":{"self":[{"href":"https:\/\/www.mediamill.de\/blog\/wp-json\/wp\/v2\/posts\/1237","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.mediamill.de\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.mediamill.de\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.mediamill.de\/blog\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/www.mediamill.de\/blog\/wp-json\/wp\/v2\/comments?post=1237"}],"version-history":[{"count":1,"href":"https:\/\/www.mediamill.de\/blog\/wp-json\/wp\/v2\/posts\/1237\/revisions"}],"predecessor-version":[{"id":1238,"href":"https:\/\/www.mediamill.de\/blog\/wp-json\/wp\/v2\/posts\/1237\/revisions\/1238"}],"wp:attachment":[{"href":"https:\/\/www.mediamill.de\/blog\/wp-json\/wp\/v2\/media?parent=1237"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.mediamill.de\/blog\/wp-json\/wp\/v2\/categories?post=1237"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.mediamill.de\/blog\/wp-json\/wp\/v2\/tags?post=1237"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}