[Kommandozeile] Dateien umbenennen

Hallo!

Wenn ich alle Dateien mit der Dateiendung *.txt in einem Verzeichniss löschen will, kann ich das folgendermassen machen:

find ~/texte -name "\*.txt" -exec rm {} \;

Was muss ich beim umbenennen mehrere Dateien vom Typ *.dat in *.txt machen?
Unter DOS ist das recht easy:

ren \*.dat \*.txt

Ich habe mich der Lösung angenähert aber das ist es noch nicht so ganz:

find -name "\*.txt" -exec mv {}{}.bak \;

Hat jemand einen Tip?

Gruß Christian

Tach,

Was muss ich beim umbenennen mehrere Dateien vom Typ *.dat in
*.txt machen?

gibt da glaub sogar mehrere tools für. z.B. mrename von Giancarlo Erra :

Example:
If you have a directory with two jpeg images prof.jpg and forp.jpg
and you want to add them a prefix like item0, item1 etc…
(that is item0prof.jpg, item1forp.jpg etc…) do this:

cd /path/to/the/images
mrename ‚.jpg’ item -c

to copy each matching file into another with the new name

mrename '
.jpg‘ item -m

to rename each file without keeping a copy with the previous name

Jame~

Tach,

Was muss ich beim umbenennen mehrere Dateien vom Typ *.dat in
*.txt machen?

gibt da glaub sogar mehrere tools für. z.B. mrename von
Giancarlo Erra :

Danke Jame~ , das kann ich mal ausprobieren.
Einziger Hacken: Muss man wohl noch installieren.
Schön wäre natürlich wenn man das mit Unix/Linux-Bordmitteln realisieren könnte.

Gruß Christian

Hallo,

ein kleines shellscript hilft da weiter:

datei: ren.sh
#!/bin/bash
files=$(ls *.dat);
for i in $files;
do
name=$(echo $i | cut -f1 -d".");
mv $i „$name“.txt ;
done

Danach chmod +x ren.sh und du kannst die dateien mit:
./ren.sh
umbenennen.

Gruss, jahan.

Was muss ich beim umbenennen mehrere Dateien vom Typ *.dat in
*.txt machen?

man mmv

Danke für die Hilfe!
Super so viel Resonanz …

Habe das Script von jahangir zum Einzeiler umgebaut.

#!/bin/bash
files=$(ls *.dat);
for i in $files;
do
name=$(echo $i | cut -f1 -d".");
mv $i „$name“.txt ;
done

for i in *.dat; do x=echo $i | cut -f 1 -d .; mv $i $x; done

Das ist doch Unixstyle oder? :wink:

Gruß Christian

hehe,
in meinem putty funktionieren nur die `-hochkomma nicht *g*

gruss jahan