我有一些以 '.1' 结尾的文件,例如:
example.file.ex1.1
example.file.ex2.1
example.file.ex3.1
有没有一种方法可以快速地将它们全部重命名,而不带有结尾的“.1”(例如:example.file.ex1,example.file.ex2等)?
谢谢!
我有一些以 '.1' 结尾的文件,例如:
example.file.ex1.1
example.file.ex2.1
example.file.ex3.1
好的,请尝试使用rename :
rename -n 's/\.1$//' *
如果您的测试有效,请删除-n
(干运行模式开关)。
存在其他同名工具,可能能够实现此功能,但也可能不行,所以请小心。
如果您运行以下命令 (linux
)
$ file $(readlink -f $(type -p rename))
然后你会得到这样的结果:
.../rename: Perl script, ASCII text executable
那么这似乎是正确的工具 =)
如果不是,要将其设置为默认值(通常已经是如此)在 Debian 和类似 Ubuntu 的派生版本上:
$ sudo update-alternatives --set rename /path/to/rename
最后但并非最不重要的,这个工具最初是由Perl之父Larry Wall编写的。
rename
程序完全不同... - Antti Haapala -- Слава Україні纯bash解决方案:
for curFile in example.file.*.1; do
mv -- "$curFile" "${curFile:0:-2}"
done