1
imicksoft 2022-07-08 10:53:30 +08:00
Bulk Rename Utility
|
2
xJogger 2022-07-08 11:18:50 +08:00
Total Commander
|
3
TrevorPhillips 2022-07-08 11:20:53 +08:00 via Android 1
|
4
TrevorPhillips 2022-07-08 11:22:06 +08:00 via Android
@TrevorPhillips 眼花了 linux 啊,当我上面没说
|
5
imKiva 2022-07-09 12:44:42 +08:00
bash:
find . -name "*.mp3" -exec bash -c 'mv "$0" "$(printf %04d $(tmp=${0##* } ; echo ${tmp%%.*})).mp3"' {} \; zsh 支持嵌套字符串操作,可以: find . -name "*.mp3" -exec zsh -c 'mv $0 $(printf %04d ${${0##* }%%.*}).mp3' {} \; |
6
milukun 2022-07-09 16:22:56 +08:00
用 mac 的话,直接全选右键重命名就可以。
|
7
brsyrockss 2022-07-10 20:00:34 +08:00
给你两个工具,会写正则就行,一个叫 rename ,另一个叫 advanced renamer ,第二个复杂一些,我用第二个做过和你一样的事情,注意先拿别得文件练练手,有些东西删了就好再整理了。
另:建议文件不要纯 0001 0002 ,如果你有两个小说文件夹,都是同样命名方式,搜 0001 会出来 2 个结果,只能用路径来判断,可以编号后面跟个 -XXX 名字 |
8
lovestudykid 2022-07-10 23:38:43 +08:00
awk 都会用了,还什么小白啊...
|
9
lovestudykid 2022-07-10 23:40:09 +08:00
搜了下,rename 本身就可以 pad
|
10
huntagain2008 OP @lovestudykid 我只看了《 UNIX 编程环境 1983 版》前 6 章(花 5 块钱买了的书),只会很浅显的入门知识。
|
11
huntagain2008 OP 小白用 python 版的批量重命名
#!/usr/bin/env python3 # 凡人修仙传( 1401-1500 ) 1.mp3 => 凡人修仙传 0001.mp3 # import os import sys path = "/home/ht/下载 /" try: >>>>prefix = sys.argv[1] except IndexError: >>>>print("usage: python3 rename_pad.py argv1") >>>>sys.exit(1) for filename in os.listdir(path): >>>>num = filename[:-4].split()[-1] >>>>suffix = filename[-4:] >>>>num = num.zfill(4) >>>>new_filename = prefix + "_" + num + suffix >>>>os.rename(os.path.join(path, filename), os.path.join(path, new_filename)) |
12
huntagain2008 OP rename 版, stackoverflow 比较容易查到这类简单问题
ht@ht-3470:~/下载$ rename 's/凡人修仙传( 1401-1500 ) //' *.mp3 1.mp3; 2.mp3......;100.mp3 ht@ht-3470:~/下载$ rename 's/\d+/sprintf("凡人修仙传_%04d",$&)/e' *.mp3 凡人修仙传_0001.mp3; 凡人修仙传_0001.mp3......;凡人修仙传_0100.mp3 |
13
qzhai 2022-07-11 15:40:16 +08:00
说出来你可能不信,mac 访达 自带 持批量重命名。。。。
|
14
huntagain2008 OP @qzhai 说来不好意思,至今不会用 Mac 。 昨天是试了访达的重命名,感觉不太好用,也许是我不会用。
我给旧笔记本装的 xubuntu ,发现它自带的批量重命名有替换、补齐、正则等,比我现在用的 kubuntu 的重命名强不少。 当然 windows 上的重命名软件就更多了,最近用过的菲菲更名宝贝,还有 Microsoft PowerToys |
15
kemistep 2022-07-11 17:16:50 +08:00
python 快捷多了;
``` """ 文件名批量修改 示例:尚硅谷 2021 版 React 技术全家桶全套完整版(零基础入门到精通-男神天禹老师亲授) (P1. 001_尚硅谷 react 教程_react 简介).mp4 """ import os, re, shutil dst_dir = r"G:\FFOutput\react_shangguigu" #replace \ with / os.chdir(dst_dir) file_list = os.listdir(dst_dir) for file in file_list: new_name = re.findall(r'P.*?\.mp4$',file) # \u4E00-\u9FA5 if len(new_name)>=1: print(new_name) os.rename(file,new_name[0]) ``` [python 文件名批量修改 - ministep88 - 博客园]( https://www.cnblogs.com/ministep/p/15587015.html ) |
16
runningowl 2022-07-12 12:23:19 +08:00
windows 的 powertoys 有重命名
|
17
liberty1900 2023-09-09 17:37:26 +08:00
|
18
huntagain2008 OP @liberty1900 现在看来,重命名多个文件已经不是问题。并不需要写什么脚本,还是用带图形界面的软件更好。系统自带的更好。即使真的要用脚本或命令行工具,也需具备 rename -n 这样的预览功能,再未改名之前先看个效果。毕竟是不可逆的操作。专业的重命名软件都提供 log 或备份。
现在我都是用 Xubuntu 的 FileManager 自带的重命名。可重命名多个文件。 选中多个文件,按 F2 就进入对话框。可用在文件名、后缀、名称和后缀。 音频标签 插入日期 插入/改写 移除字符 搜索与替换 编号 大写/小写 正式改名之前,都可在新名称这一列看到预览效果,确认无误,再点击重命名文件的按钮。 rename 这个命令行工具也有 -n 选项可以不修改文件名,只预览新文件名的效果。 |
19
liberty1900 2023-09-10 13:02:48 +08:00
@huntagain2008 我这脚步默认就是 Dry Run ,手动加 -r 选项才会真正 rename
|