114 lines
2.5 KiB
Markdown
114 lines
2.5 KiB
Markdown
# 文件重命名工具
|
||
|
||
这是一个功能强大的Python文件重命名工具,支持命令行和图形界面两种使用方式。
|
||
|
||
## 功能特性
|
||
|
||
- 批量文件重命名
|
||
- 简单字符串替换
|
||
- 正则表达式替换
|
||
- 添加前缀/后缀
|
||
- 自动编号
|
||
- 大小写转换
|
||
- 预览模式
|
||
- 操作撤销
|
||
- 日志记录
|
||
|
||
## 安装要求
|
||
|
||
- Python 3.6+
|
||
- 标准库(无需额外安装第三方包)
|
||
|
||
## 使用方法
|
||
|
||
### 命令行版本
|
||
|
||
```bash
|
||
# 查看帮助
|
||
python file_renamer.py -h
|
||
|
||
# 简单替换
|
||
python file_renamer.py /path/to/directory replace "old_text" "new_text"
|
||
|
||
# 正则表达式替换
|
||
python file_renamer.py /path/to/directory regex "\d+" "#"
|
||
|
||
# 添加前缀
|
||
python file_renamer.py /path/to/directory prefix "PRE_"
|
||
|
||
# 添加后缀
|
||
python file_renamer.py /path/to/directory suffix "_SUF"
|
||
|
||
# 自动编号
|
||
python file_renamer.py /path/to/directory enumerate --prefix="IMG_" --start=1 --digits=3
|
||
|
||
# 大小写转换
|
||
python file_renamer.py /path/to/directory case lower
|
||
|
||
# 预览模式(不实际重命名)
|
||
python file_renamer.py /path/to/directory replace "old" "new" --preview
|
||
|
||
# 撤销上次操作
|
||
python file_renamer.py /path/to/directory undo
|
||
```
|
||
|
||
### 图形界面版本
|
||
|
||
```bash
|
||
python gui_renamer.py
|
||
```
|
||
|
||
图形界面提供了直观的操作方式,支持以下功能:
|
||
|
||
1. 选择目录
|
||
2. 多种重命名模式切换
|
||
3. 预览功能
|
||
4. 实时结果显示
|
||
5. 撤销操作
|
||
|
||
## 使用示例
|
||
|
||
### 示例1:批量替换文件名中的日期格式
|
||
|
||
假设有一批文件名为 `report_2023-01-01.txt`,想改为 `report_20230101.txt`:
|
||
|
||
```bash
|
||
python file_renamer.py /path/to/files replace "-" ""
|
||
```
|
||
|
||
### 示例2:使用正则表达式清理文件名
|
||
|
||
移除文件名中的数字:
|
||
|
||
```bash
|
||
python file_renamer.py /path/to/files regex "\d+" ""
|
||
```
|
||
|
||
### 示例3:为照片文件添加前缀和编号
|
||
|
||
```bash
|
||
python file_renamer.py /path/to/photos enumerate --prefix="PHOTO_" --start=1 --digits=4
|
||
```
|
||
|
||
这会将文件重命名为:`PHOTO_0001.jpg`, `PHOTO_0002.png`, ...
|
||
|
||
### 示例4:统一文件名大小写
|
||
|
||
```bash
|
||
python file_renamer.py /path/to/files case lower
|
||
```
|
||
|
||
## 注意事项
|
||
|
||
1. 操作前建议先使用预览模式查看结果
|
||
2. 工具会自动避免文件名冲突
|
||
3. 所有操作都会记录到日志文件中
|
||
4. 支持通过撤销功能回退最后一次操作
|
||
5. 正则表达式功能需要熟悉基本的正则语法
|
||
|
||
## 日志和历史记录
|
||
|
||
- 日志文件:`rename_log.txt`
|
||
- 历史记录:`rename_history.json`
|
||
|
||
可以通过历史记录文件查看所有重命名操作,并在需要时手动恢复文件名。 |