我有许多以“.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
有没有一种方法可以让我快速重命名它们而不用末尾的“.1”(例如 example.file.ex1、example.file.ex2 等)?
谢谢!
是的,用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 编写的。
纯 bash 解决方案:
for curFile in example.file.*.1; do
mv -- "$curFile" "${curFile:0:-2}"
done