DDR爱好者之家 Design By 杰米
本文实例为大家分享了python实现遍历文件夹修改文件后缀的具体代码,供大家参考,具体内容如下
用法 python Modifer.py ./ -fp java xml
# coding:utf-8 # Build by LandGrey 2016-05-27 import os import sys #批量修改路径与文件名 def Modifyprefix(Path,oldcontent,newcontent): all_file_list = os.listdir(Path) #列出指定目录下的所有文件 for file_name in all_file_list: currentdir =os.path.join(Path, file_name) #连接指定的路径和文件名or文件夹名字 if os.path.isdir(currentdir): #如果当前路径是文件夹,则跳过 Modifyprefix(currentdir,oldcontent,newcontent) fname = os.path.splitext(file_name)[0] #分解出当前的文件路径名字 ftype = os.path.splitext(file_name)[1] #分解出当前的文件扩展名 if oldcontent in fname: fdcount[0]+=1 replname =fname.replace(oldcontent,newcontent) #将原文件名中的'oldcontent'字符串内容全替换为'newcontent'字符串内容 newname = os.path.join(Path,replname+ftype) #文件路径与新的文件名字+原来的扩展名 os.rename(currentdir,newname) #重命名 #批量修改文件扩展名(后缀) def Modifypostfix(Path,oldftype,newftype): all_file_list = os.listdir(Path) #列出指定目录下的所有文件 for file_name in all_file_list: currentdir =os.path.join(Path,file_name) if os.path.isdir(currentdir): #迭代 Modifypostfix(currentdir,oldftype,newftype) fname = os.path.splitext(file_name)[0] ftype = os.path.splitext(file_name)[1] if oldftype in ftype[1:]: #找到需要修改的扩展名 typecount[0]+=1 ftype=ftype.replace(oldftype,newftype) newname = os.path.join(Path,fname+ftype) #文件路径与原来的文件名字+新的扩展名 os.rename(currentdir,newname) #重命名 def Useage(): print unicode("\n[+] 用法: python Modifer.py [指定目录] [选项] [参数1] [参数2]","utf-8") print unicode("[+] 选项 [-fd] :批量修改目录和文件名 [参数1]: 需要替换的字符 [参数2]:替换字符串","utf-8") print unicode("[+] 选项 [-fp] :批量修改文件后缀名 [参数1]: 原后缀名 [参数2]:需要替换的后缀名","utf-8") print unicode("[+] 选项 [-all] :批量修改目录、文件名和文件后缀名 [参数1]: 需要替换的字符部分 [参数2]:替换字符串","utf-8") print unicode(r"[+] 用法示例:python Modifer.py D:\files -fp txt data","utf-8") if __name__=="__main__": typecount=[0] fdcount=[0] if len(sys.argv)==2 and "-h" in sys.argv[1]: Useage() sys.exit() elif len(sys.argv) !=5: print unicode("\n[+] 参数错误 !\n","utf-8") print unicode("[+] 用 -h 或--help 参数查看Modifer.py用法","utf-8") sys.exit() elif os.path.isdir(sys.argv[1]) is False: print unicode("\n[+] 指定目录错误 ! 请检查输入路径是否正确,路径中不能有空格\n","utf-8") print unicode("[+] 用 -h 或--help 参数查看Modifer.py用法","utf-8") sys.exit() elif sys.argv[2]=="-fd": Modifyprefix(sys.argv[1],sys.argv[3],sys.argv[4]) print unicode("\n[+] Modifer.py Build by LandGrey","utf-8") print unicode("[+] 完成 !","utf-8") print unicode("[+] 共修改%s个目录和文件名"%fdcount[0],"utf-8") elif sys.argv[2]=="-fp": Modifypostfix(sys.argv[1],sys.argv[3],sys.argv[4]) print unicode("\n[+] Modifer.py Build by LandGrey","utf-8") print unicode("[+] 完成 !","utf-8") print unicode("[+] 共修改%s个后缀名"%typecount[0],"utf-8") elif sys.argv[2]=="-all": Modifypostfix(sys.argv[1],sys.argv[3],sys.argv[4]) Modifyprefix(sys.argv[1],sys.argv[3],sys.argv[4]) print unicode("\n[+] Modifer.py Build by LandGrey","utf-8") print unicode("[+] 完成 !","utf-8") print unicode("[+] 共修改%s个目录名、文件名和后缀名"%(typecount[0]+fdcount[0]),"utf-8") else: print unicode("\n[+] 选项错误 !\n","utf-8") print unicode("[+] 用 -h 或--help 参数查看Modifer.py用法","utf-8") sys.exit()
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
DDR爱好者之家 Design By 杰米
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
DDR爱好者之家 Design By 杰米
暂无评论...
更新日志
2024年11月27日
2024年11月27日
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]