在过去的几个小时里,我一直在试图弄清楚如何重命名文件。
我有 2000 个这样的文件:
file.1.pdb
file.2.pdb
file.3.pdb
我想将这些文件重命名为类似名称:
file.pdb.1
file.pdb.2
file.pdb.3
答案1
如果你已经rename
安装,你可以使用
rename -n 's/(\.\d+)\.pdb$/.pdb$1/' *.pdb # just watch what WOULD happen
rename 's/(\.\d+)\.pdb$/.pdb$1/' *.pdb # actually rename the files
该命令rename
可以通过以下方式安装
sudo apt install rename
答案2
答案3
使用 Perl rename
:
rename -n 's/(\.\d+)(\.pdb)/$2$1/' *.pdb
快速解释:
*.pdb
匹配所有以 . 结尾的文件.pdb
(由 shell 完成)(\.\d+)
匹配文字点,然后匹配一个或多个十进制数字。括号创建匹配组。$2$1
将第一组和第二组匹配组颠倒过来。-n
无操作(模拟)。如果输出看起来不错,请在没有此标志的情况下再次运行该命令。
答案4
最近,默认文件管理器 nautilus 增加了一个批量重命名对话框。它还不够强大,无法满足您的需要。但幸运的是,还有 thunar,这是一个可以安装的替代文件管理器。使用 thunars 重命名对话框,您可以使用 GUI 执行所需的操作。
首先安装 thunar:
sudo apt install thunar
启动 thunar,导航到包含文件的目录。然后选择所有文件。按F2。
在打开的对话框中,再次选择所有文件。将模式更改为“搜索和替换”和“名称和后缀”。选中“正则表达式”。现在使用以下内容作为搜索和替换模式:
file\.(.+)\.pdb
和
file.pdb.$1
最后点击重命名按钮。
这种方式的优点是,您可以在实际重命名之前直观地预览将发生的情况。