Eu tenho vários arquivos tiff chamados:
sw.001.tif
sw.002.tif
...
e quero remover o .tif
no final de cada um dos arquivos. Como posso usar o rename
comando para fazer isso?
Responder1
perl
's rename
(como normalmente encontrado no Debian, onde também é chamado prename
), ouesta derivada( rename
pacote no Debian):
rename 's/\.tif$//' *.tif
util-linux
rename
(como normalmente encontrado no Red Hat, rename.ul
no Debian):
rename -- .tif '' *.tif
(observe que esse seria renomeado blah.tiffany.tif
para blahfany.tif
)
Responder2
Para não renomear, você pode fazer:
$ for i in *.tif; do mv -i $i `basename $i .tif`; done
(-i para avisar contra a substituição de um arquivo)
Responder3
rename -- .oldext .newext *.oldext
Isso substitui a extensão antiga pela nova. Para simplesmente remover a extensão, você pode passar explicitamente uma string vazia como argumento.
rename -- .gz.tmp '' *.gz.tmp
Com o comando acima todos os arquivos com .gz.tmp
extensão na pasta atual serão renomeados para filename.gz
.
Consulte o artigo:Linux: remova extensões de arquivos para vários arquivospara detalhes.
Responder4
perl-rename 's/\.tif//' *.tif
Use -n
para simulação.