我有许多 tiff 文件,名为:
sw.001.tif
sw.002.tif
...
我想删除.tif
每个文件末尾的 。我如何使用该rename
命令来执行此操作?
答案1
perl
的rename
(通常在 Debian 上找到,也称为prename
),或者这个衍生品(rename
Debian 上的软件包):
rename 's/\.tif$//' *.tif
util-linux
rename
(通常在 Red Hat、rename.ul
Debian 上找到):
rename -- .tif '' *.tif
(请注意,该名称将重命名blah.tiffany.tif
为blahfany.tif
)
答案2
对于非重命名,您可以这样做:
$ for i in *.tif; do mv -i $i `basename $i .tif`; done
(-i 警告不要替换文件)
答案3
rename -- .oldext .newext *.oldext
这会将旧扩展替换为新扩展。要简单地删除扩展,您可以显式传递一个空字符串作为参数。
rename -- .gz.tmp '' *.gz.tmp
使用上述命令,.gz.tmp
当前文件夹中所有扩展名的文件都将重命名为filename.gz
.
参考文章:Linux:删除多个文件的文件扩展名了解详情。
答案4
perl-rename 's/\.tif//' *.tif
用于-n
试运行。