python文件内容如下:
# -*- coding: cp936 -*- import os ,string ,urllib ,operator
# 文件替换目录路径 sdir='/usr/local/mldonkey/incoming/'
# 数字标记 sNum='0123456789'
# 遍历目录做文件名转换 def convert(): filenames=os.listdir(sdir) for filename in filenames : if filename != convertName(filename) : print filename + ' >>> ' + convertName(filename) os.rename(sdir + filename ,sdir + convertName(filename))
# 转换一个文件名 def convertName(s) : location = 0 ret = "" while True : if location + 8 <= len(s) : subStr = s[location:location + 8] if check(subStr) : ret += "%" + hex((int)(subStr[1:4]))[2:4] + "%" + hex((int)(subStr[5:8]))[2:4] location = location + 8 else : ret += s[location :location + 1] location = location + 1 else : ret += s[location:] break return urllib.unquote(ret)
# 检查一个字符串是否需要做转换 def check(s): if len(s) != 8 : return False
if s[0] != '_' or s[4] != '_' : return False
if (s[1] in sNum) and (s[2] in sNum) and (s[3] in sNum) and (s[5] in sNum) and (s[6] in sNum) and (s[7] in sNum) : return True return False
# 执行文件名转换 convert() |
要运行此脚步,需要Python2.4,在命令行输入:
python mldonkey.py
运行即可。