Linux/Dateinamen/bereinigen/Skripte: Unterschied zwischen den Versionen

Aus Foxwiki
Die Seite wurde neu angelegt: „=== mv/sed === $ '''mv 'file' $(echo 'file' | sed -e 's/[^A-Za-z0-9._-]/_/g')''' === find/perl === find /path/to/files -type f -print0 | \ perl -n0e '$new = $_; if($new =~ s/[^[:ascii:]]/_/g) { print("Renaming $_ to $new\n"); rename($_, $new); }'“
 
Keine Bearbeitungszusammenfassung
Zeile 7: Zeile 7:
   print("Renaming $_ to $new\n"); rename($_, $new);
   print("Renaming $_ to $new\n"); rename($_, $new);
  }'
  }'
== Dateinamen kürzen ==
; Beispiel
MP3-Dateien auf 30 Zeichen kürzen
<syntaxhighlight lang="bash" line>
for altname in *.mp3; do neuname=$(echo $altname | cut -c -26); mv "$altname" "$neuname.mp3"; done
</syntaxhighlight>

Version vom 14. September 2024, 10:42 Uhr

mv/sed

$ mv 'file' $(echo 'file' | sed -e 's/[^A-Za-z0-9._-]/_/g')

find/perl

find /path/to/files -type f -print0 | \
perl -n0e '$new = $_; if($new =~ s/[^[:ascii:]]/_/g) {
 print("Renaming $_ to $new\n"); rename($_, $new);
}'

Dateinamen kürzen

Beispiel

MP3-Dateien auf 30 Zeichen kürzen

for altname in *.mp3; do neuname=$(echo $altname | cut -c -26); mv "$altname" "$neuname.mp3"; done