比较直接的工具有两个, 系统自带的 mv
和需要单独安装的 rename
. 这里分别介绍下.
mv
这并不是一个专门用来重命名的工具, 主职还是用来移动文件的. 但是重命名不就是将一个文件移动到了当前位置并以新的名字命名么? 所以可以使用 mv
来实现我们的目的.mv
的用法很简单, 最简单的可以通过指定原始文件名 source_name
和目标文件名 target_name
来实现移动/重命名.
mv source_name target_name
直接指定名字是可以处理一个单独的文件, 但是如果名字命名规律的话, 可以考虑使用 shell
的通配符, 来实现更多文件的匹配和修改.
rename
这个是一个专门的工具, 但是需要用户自己安装. 对于Ubuntu只需要 sudo apt-get install rename
来安装.rename
我觉得主要的使用有两种:
# 一般模式
rename source_str target_str source_file
# 高级模式
rename 's/source_str/target_str/' source_file
这里的 source_file
可以通过使用通配符实现大量文件的匹配.
其实更灵活的还是这里的高级模式, 也就是使用正则表达式来实现每一个文件名字里的特定字符串 source_str
替换为 target_str
的替换.
:::info
作者说:
正则表达式在处理文本上有着无与伦比的优势和灵活性. 功能非常强大. 而且很多的语言已经通过各种方式来支持正则表达式的使用, 例如python的 re
模块. 而主流的文本编辑器亦是提供了支持, 例如Vim等.
可以说, 如果我们掌握了正则表达式, 那么在处理文本这一块, 我们就拥有了一件利器.
:::