Tengo varios archivos tiff llamados:
sw.001.tif
sw.002.tif
...
y quiero eliminar el .tif
al final de cada uno de los archivos. ¿Cómo puedo usar el rename
comando para hacer esto?
Respuesta1
perl
's rename
(como se encuentra normalmente en Debian, donde también se llama prename
), oeste derivado( rename
paquete en Debian):
rename 's/\.tif$//' *.tif
util-linux
rename
(como se encuentra normalmente en Red Hat, rename.ul
en Debian):
rename -- .tif '' *.tif
(tenga en cuenta que ese cambiaría el nombre blah.tiffany.tif
a blahfany.tif
)
Respuesta2
Para no cambiar el nombre, puede hacer:
$ for i in *.tif; do mv -i $i `basename $i .tif`; done
(-i para advertir contra la sustitución de un archivo)
Respuesta3
rename -- .oldext .newext *.oldext
Esto sustituye la antigua extensión por la nueva. Para simplemente eliminar la extensión, puede pasar explícitamente una cadena vacía como argumento.
rename -- .gz.tmp '' *.gz.tmp
Con el comando anterior, todos los archivos con .gz.tmp
extensión en la carpeta actual cambiarán de nombre a filename.gz
.
Consulte el artículo:Linux: eliminar extensiones de archivos para varios archivospara detalles.
Respuesta4
perl-rename 's/\.tif//' *.tif
Úselo -n
para funcionamiento en seco.