Python实例31[批量对目录下文件重命名]
2024-08-30 20:30:03
经常会遇到下载的文件或电子书,名字中间都包含了一些网址信息,实际使用中由于名字太长不方便,下面的脚本使用正则表达式来对目录下的所有文件重命名:
例如:
修改前:[大家网]Mac OS X for Unix Geeks[www.TopSage.com].mobi
修改后:Mac OS X for Unix Geeks.mobi
修改后:Mac OS X for Unix Geeks.mobi
python代码如下
import os
import re def rename_dir(dir,regex,f):
if not os.path.isdir(dir) or not os.path.exists(dir) :
print("The input is not one directory or not exist.")
for root,subdirs,files in os.walk(dir):
for name in files:
oldname = name
newname = re.sub(regex,f,name)
print("Before : " + os.path.join(root,oldname))
print("After : " + os.path.join(root,newname))
if not name == newname and not os.path.exists(os.path.join(root,newname)):
os.rename(os.path.join(root,oldname),os.path.join(root,newname))
for dir in subdirs:
rename_dir(os.path.join(root,dir)) rename_dir("C:\\Python31\\test","\[.*\](.*)\[www.TopSage.com\](.*)",lambda m:m.group(1)+m.group(2))
最新文章
- awk(2)-模式(pattern)
- 转:ffdshow 源代码分析
- Oracle11G 7个服务说明
- Jsp:useBean标签的使用
- 深入理解Windows X64调试
- synchronized作用范围及用法
- 基于用户映射的CAS单点登录系统设计与实现
- docs/pcs/rest/file data apis list - 百度开发者中心
- Chrome浏览器扩展开发系列之七:override页面
- poj~1904
- D. The Beatles
- topcoder srm 640 div1
- mysql 数据备份与数据导入到出
- python3改版后的特征
- manjaro 的配置
- JAVA AES加密解密
- sudo with no password
- 使用 phpStudy + VSCODE 进行 PHP 断点调试
- 下载Chrome独立版(alternate/offline Installer)的地方
- “Device eth0 does not seem to be present”解决办法
热门文章
- SparseLDA算法
- Jmeter+Ant+Jenkins接口自动化持续集成环境搭建(Linux)
- python一些包
- java:Oracle(视图,索引,序列)
- 使用svctraceviewer查看WCF服务异常信息
- Day03:运算符和表达式 / 分支结构
- screen重新连接会话
- 应用安全 - 工具 - 浏览器 - 火狐(FireFox) - 漏洞汇总
- selenium.common.exceptions.WebDriverException: Message: ‘geckodriver’ executable needs to be in PATH
- mysql8无法用navicat连接(mysql8加密方式的坑)