ca 500 Dateien umbenennen ... programm/script gesucht

Post Reply
Message
Author
eq

ca 500 Dateien umbenennen ... programm/script gesucht

#1 Post by eq »

hi .. ich habe ein e Liste von Dateien, welche durchnummeriert sind, aber da zwischen fehlen einige nummern.
die endung soll auch geändert werden und die ganze datei soll 12-stellig sein:

also

bild1.pic
bild2.pic
bild5.pic
bild8.pic
bild9.pic
bild10.pic
bild11.pic


soll werden

000000000001.bmp
000000000002.bmp
000000000005.bmp
000000000008.bmp
000000000009.bmp
000000000010.bmp
000000000011.bmp

hat jemand ein kleines Script parat ?

ein C-source darf es auch sein

DANKE

domseichter
Posts: 57
Joined: 11. Feb 2002 22:08
Location: Laufen
Contact:

Re: ca 500 Dateien umbenennen ... programm/script gesucht

#2 Post by domseichter »

Wenn Du KDE installiert hast, schau Dir mal KRename an:
http://krename.sf.net

eq

Re: ca 500 Dateien umbenennen ... programm/script gesucht

#3 Post by eq »

sorry ... hab kein X-Win ... is ne HP_UX Machine
deswegen bräuchte ich für sowas ja ein kleines script

Jochen

Re: ca 500 Dateien umbenennen ... programm/script gesucht

#4 Post by Jochen »

Nichts leichter als das:
<blockquote><pre><font size="1" face="">code:</font><hr><font face="Courier New" size="2">ls *.pic | awk '{
name = $0
gsub (/[<!--no-->^0-9<!--no-->]+/,"")
printf ("mv %s %012d.bmp\<!--no-->n",name,$0)
}' | sh
</font><hr></pre></blockquote><li>Alle Dateien mit Endung .pic in den awk schicken.
<li>Dort erst mal den Dateinamen merken
<li>Nur die Zahl aus dem Dateinamen übrig behalten.
<li>mv-Kommando aus dem Dateinamen und der auf 12 Stellen aufgefüllten Zahl + ".bmp" bauen.
<li>Diese Liste von mv-Kommandos in eine Shell zur Ausführung pipen.

Jochen

Niko

Re: ca 500 Dateien umbenennen ... programm/script gesucht

#5 Post by Niko »

Was macht gsub ? Habe keine man page dazu.
Bin auch in den RedHat Skripten mal darüber gestolpert.

Jochen

Re: ca 500 Dateien umbenennen ... programm/script gesucht

#6 Post by Jochen »

gsub (global substitute) ist eine awk-Funktion. Wenn Du mit englischer Doku kein Problem hast, kannst Du mit "info gawk" eine sehr gute Einführung in den awk kriegen (das g vor awk steht für GNU awk). Das awk-Skript wird auf jede Zeile ausgeführt, d.h. für jeden Dateinamen einmal. Alle Folgen von Nicht-Ziffern ("/[<!--no-->^0-9<!--no-->]+/") werden durch eine leere Zeichenkette ersetzt, also alles bis auf die Zahlen im Dateinamen gelöscht.

Jochen

Post Reply