ubuntu批量重命名文件
时间: 2025-07-19 15:28:37 浏览: 18
### Ubuntu 批量重命名文件方法
在 Ubuntu 中,有多种方式可以实现批量重命名文件的功能。以下是几种常见的方法及其具体操作:
#### 方法一:使用 `rename` 命令
`rename` 是一个强大的命令行工具,支持通过正则表达式来批量修改文件名。例如,要将当前目录下的 `.c` 和 `.h` 文件扩展名前添加 `_1`,可使用如下命令:
```bash
rename 's/\.(c|h)$/_1.$&/' *.c *.h
```
此命令会将所有匹配的文件按照规则进行重命名[^1]。
对于更复杂的场景,比如将文件名中的特定字符串替换为其他内容,可以通过调整正则表达式的逻辑完成。例如,将 `- 副本.h` 替换为 `_ori.h` 的情况,可以用以下命令:
```bash
rename 's/ - 副本\.h$/_ori.h/' *副本*.h
```
#### 方法二:使用 `find` 和 `sed` 配合 `mv`
当需要针对某些特殊条件筛选并重命名文件时,可以结合 `find`、`sed` 和 `mv` 实现复杂需求。例如,找到所有以 `- 副本.h` 结尾的文件并将它们重命名为带有 `_ori.h` 后缀的新名字:
```bash
find . -type f -name "* - 副本.h" -exec bash -c 'mv "$0" "$(echo "$0" | sed "s/ - 副本.h/_ori.h/")"' {} \;
```
这条命令利用了 `find` 查找目标文件,并通过 `sed` 修改文件名后再调用 `mv` 完成实际改名动作[^2]。
#### 方法三:图形界面批量重命名
如果偏好于不依赖终端的方式,则可以直接借助 Nautilus(Ubuntu 默认文件管理器)来进行直观便捷的操作。步骤如下:
1. 导航至包含待处理文件的目标文件夹;
2. 使用快捷键 Ctrl+A 全选这些项目或者手动选取部分条目;
3. 右击已选定区域内的任意位置弹出上下文菜单,挑选其中标注为「重命名」选项;
4. 清除默认显示字段 `[Original file name]` 并按下旁边的 "+" 图标按钮增加自定义设置项;
5. 在新增加的部分选择合适的模式如自动编号等功能定制化最终效果;
6. 确认无误之后点击窗口顶部确认按键启动整个过程即可[^3]。
以上三种途径各有优劣之处,可以根据个人习惯以及具体情况灵活选用最适合自己的方案。
### 示例脚本
为了进一步简化流程,这里提供一段简单的 Bash 脚本来演示如何自动化这一任务:
```bash
#!/bin/bash
for file in *.txt; do
newfile=$(echo $file | awk '{print toupper(substr($0,1,1)) substr($0,2)}')
mv -- "$file" "${newfile}"
done
```
这段代码将会把工作区里的每一个 txt 文档首字母转换成为大写形式再保存回去。
阅读全文
相关推荐



















