1
rrfeng 2014-11-19 11:00:01 +08:00 1
cygwin
虽然还是没懂你要干什么。 先把文件名列出来,然后肉眼判断每个改成什么名字,然后再用程序改过去? |
2
mimzy 2014-11-19 11:06:45 +08:00 via Android 1
不知道 ReNamer 是不是符合你的需求
|
3
xavierskip 2014-11-19 11:11:02 +08:00
Total Commander
|
4
aa65535 2014-11-19 11:16:12 +08:00 1
为什么不用 for /r ?
(for /r .\ %%i in (*) do echo ren %%i %%~nxi)>ren.bat 然后你修改 ren.bat 就行了,里面是生成好的 ren 命令。 如果改路径需要改成 move ,不用 ren 。 |
6
mortal OP @xavierskip TC 试过了,只能批量修改一个目录下的文件,不能同时包括子文件夹……
|
8
yakczh 2014-11-19 11:44:17 +08:00
os.walk 你值得拥有
|
9
frankzeng 2014-11-19 12:46:39 +08:00 1
第一个先成生,再运行另一个
##q.py import os path = "C:\Users\john\Desktop\data\sbaidu" #dir dlist = os.walk(path) outdict = {} for d in dlist: sdir = d[0] for i in d[1:]: for file in i: p = sdir+"\\"+file outdict[p] = 1 fd = open("qout.txt",'w') #write to file qout.txt for key in outdict.keys(): fd.write(key+'\n') fd.close() 这是另一个文件 import os qfile = "qout.txt" #old file mfile = "mout.txt" #the new file data = {} fd = open(qfile) n = 1 for line in fd: data[n] = line[:-1] n += 1 fd.close() fd = open(mfile) n = 1 for line in fd: file = line[:-1] if file!=data[n]: print data[n] ,"move to ",file os.rename(data[n],file) else: pass n += 1 |
10
asdftu 2014-11-19 14:07:27 +08:00
批处理实现起来会很简单。
for /r 遍历所有文件, echo 文件名 set /p 键入新文件名 ren 搞定 |
11
msg7086 2014-11-19 14:12:06 +08:00
拖把更名器,拖入所有文件,调用文本文件命名,应用,结束。
|