Lückenhaft nummerierte Dateinamen umbenennen

18/02/2011 - 14:48 von Fr | Report spam
Hallo zusammen,

es existieren viele nummerierte Dateinamen, deren
fortlaufende Nummerierung allerdings Lücken/Sprünge
aufweist, z.B.

x02.txt
x03.txt
x04.txt
x05.txt
...

Hier beginnt die Sequenz erst bei "02", sollte aber
mit "01" beginnen. Ich suche nun ein möglichst
kompaktes Kommando, um die Neunummerierung zu erledigen.
Im Prinzip meine ich so etwas:

mmv "x*.txt" x$(printf "%02g" $(expr "#1" - 1)).txt

was aber wohl wegen "#1" in "expr" nicht funktioniert.
Eine for-Schleife ist natürlich immer möglich, aber ich
suche eine tipptechnisch möglichst kurze Lösung.

Danke vorab und viele Grüße aus den Alpen,
Frank
 

Lesen sie die antworten

#1 Helmut
18/02/2011 - 14:53 | Warnen spam
Hallo, ,

Du meintest am 18.02.11:

Hallo zusammen,

es existieren viele nummerierte Dateinamen, deren
fortlaufende Nummerierung allerdings Lücken/Sprünge
aufweist, z.B.

x02.txt
x03.txt
x04.txt
x05.txt
...

Hier beginnt die Sequenz erst bei "02", sollte aber
mit "01" beginnen. Ich suche nun ein möglichst
kompaktes Kommando, um die Neunummerierung zu erledigen.
Im Prinzip meine ich so etwas:



Grundsàtzlich:

Count=1
for Datei in x*.txt
do
mv $Datei x$Count.txt
let Count++
done

Ist noch ungetestet, hat insbesondere den Schönheitsfehler, dass der
Zàhler einstellig beginnt und dann zweistellig weitermacht; da sollte so
etwas wie "printf" helfen.


Viele Gruesse
Helmut

"Ubuntu" - an African word, meaning "Slackware is too hard for me".

Ähnliche fragen