经常会遇到下载的文件或电子书,名字中间都包含了一些网址信息,实际使用中由于名字太长不方便,下面的脚本使用正则表达式来对目录下的所有文件重命名:
例如:

修改前:[大家网]Mac OS X for Unix Geeks[www.TopSage.com].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))

最新文章

  1. awk(2)-模式(pattern)
  2. 转:ffdshow 源代码分析
  3. Oracle11G 7个服务说明
  4. Jsp:useBean标签的使用
  5. 深入理解Windows X64调试
  6. synchronized作用范围及用法
  7. 基于用户映射的CAS单点登录系统设计与实现
  8. docs/pcs/rest/file data apis list - 百度开发者中心
  9. Chrome浏览器扩展开发系列之七:override页面
  10. poj~1904
  11. D. The Beatles
  12. topcoder srm 640 div1
  13. mysql 数据备份与数据导入到出
  14. python3改版后的特征
  15. manjaro 的配置
  16. JAVA AES加密解密
  17. sudo with no password
  18. 使用 phpStudy + VSCODE 进行 PHP 断点调试
  19. 下载Chrome独立版(alternate/offline Installer)的地方
  20. “Device eth0 does not seem to be present”解决办法

热门文章

  1. SparseLDA算法
  2. Jmeter+Ant+Jenkins接口自动化持续集成环境搭建(Linux)
  3. python一些包
  4. java:Oracle(视图,索引,序列)
  5. 使用svctraceviewer查看WCF服务异常信息
  6. Day03:运算符和表达式 / 分支结构
  7. screen重新连接会话
  8. 应用安全 - 工具 - 浏览器 - 火狐(FireFox) - 漏洞汇总
  9. selenium.common.exceptions.WebDriverException: Message: ‘geckodriver’ executable needs to be in PATH
  10. mysql8无法用navicat连接(mysql8加密方式的坑)