Ich habe eine Reihe von TIFF-Dateien mit den Namen:
sw.001.tif
sw.002.tif
...
.tif
und ich möchte das am Ende jeder Datei entfernen . Wie kann ich den rename
Befehl dazu verwenden?
Antwort1
perl
's rename
(wie es normalerweise bei Debian zu finden ist, wo es auch genannt wird prename
) oderdieses Derivat( rename
Paket unter Debian):
rename 's/\.tif$//' *.tif
util-linux
rename
(wie normalerweise bei Red Hat und rename.ul
Debian zu finden):
rename -- .tif '' *.tif
(beachten Sie, dass dieses in umbenannt blah.tiffany.tif
würde blahfany.tif
)
Antwort2
Wenn Sie keine Umbenennung vornehmen möchten, können Sie Folgendes tun:
$ for i in *.tif; do mv -i $i `basename $i .tif`; done
(-i, um vor dem Ersetzen einer Datei zu warnen)
Antwort3
rename -- .oldext .newext *.oldext
Dadurch wird die alte Erweiterung durch die neue ersetzt. Um die Erweiterung einfach zu entfernen, können Sie explizit eine leere Zeichenfolge als Argument übergeben.
rename -- .gz.tmp '' *.gz.tmp
Mit dem obigen Befehl .gz.tmp
werden alle Dateien mit der Erweiterung im aktuellen Ordner in umbenannt filename.gz
.
Siehe den Artikel:Linux: Dateierweiterungen für mehrere Dateien entfernenfür Details.
Antwort4
perl-rename 's/\.tif//' *.tif
-n
Für den Trockenlauf verwenden .