您的位置:首页 > 编程语言 > Python开发

批量重命名文件 Python

2013-04-25 09:15 302 查看
最近工作需要,要批量重命名服务器上的文件,将之前文件名中有空格的全部都替换为下划线。

开始准备使用shell脚本,发现python实现更简单。所以就写了这个脚本。

import os
import glob
import re
path="C:/test" # 批量化的初始位置
fileHandle = open ( 'C:/test/test.txt', 'w' ) #log记录rename的信息

def getthefile(path):
for oldfn in glob.glob( path + os.sep + '*' ):
if os.path.isdir( oldfn):# 查询是含有子目录
getthefile( oldfn)
else:
if re.search(' ', oldfn):
fn=renamefile(oldfn)
if os.path.exists(fn):
index=1
while True:
filelist=fn.split('.')
fn="%s%s%s.%s"%(filelist[0],"_",index,filelist[1])
if os.path.exists(fn):
index=index+1
continue
break
fileHandle.write ("%s ===> %s\n"%(oldfn,fn))
fileHandle.flush()
os.rename(oldfn,fn);
else:
fileHandle.write ("%s Nospace!!\n"%(oldfn))
fileHandle.flush()
continue
def renamefile(filename):
return filename.replace(' ','_')
if __name__ == '__main__':
getthefile(path)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: