使用python脚本,批量修改文件夹名称

先创建一些没用的案例文件

import os
#创建新文件夹
dir = os.makedirs('D:\\SomeThing\\testfile')
#将文件目录指定到新建的文件目录下
os.chdir('D:\\SomeThing\\testfile')
print(os.getcwd())#确认当前目录 #用open函数创建文件
#使用join拼写目录
for i in range(1,101): a = os.path.join('D:\\SomeThing\\testfile',str(i)+'a.txt')
c = open(a,'w')
c.close() #遍历文件夹下的所有文件
print(os.listdir())

注意str(i)+'a.txt'

完成后的界面如图:

完成后,通过下面的python脚本进行批量修改

import os, os.path, time

def rename(file, keyword):
''' file: 文件路径 keyWord: 需要修改的文件中所包含的关键字 '''
start = time.clock()
os.chdir(file)
items = os.listdir(file)
print(os.getcwd())
for name in items:
print(name)
# 遍历所有文件
if not os.path.isdir(name):
if keyword in name:
new_name = name.replace(keyword, '多余的内容')
os.renames(name, new_name)
else:
rename(file + '\\' + name, keyword)
os.chdir('...')
print('-----------------------分界线------------------------')
items = os.listdir(file)
for name in items:
print(name) rename('D:\\SomeThing\\testfile', 'a')

这就是批量替换的其中一步,可以批量替换文件名称。 将文件中含有“a”的内容全部替换为“多余的内容

如图所示:

如果想回到清爽的数字.txt格式,可以修改代码如下:

import os, os.path, time

def rename(file, keyword):
''' file: 文件路径 keyWord: 需要修改的文件中所包含的关键字 '''
start = time.clock()
os.chdir(file)
items = os.listdir(file)
print(os.getcwd())
for name in items:
print(name)
# 遍历所有文件
if not os.path.isdir(name):
if keyword in name:
new_name = name.replace(keyword, '')
os.renames(name, new_name)
else:
rename(file + '\\' + name, keyword)
os.chdir('...')
print('-----------------------分界线------------------------')
items = os.listdir(file)
for name in items:
print(name) rename('D:\\SomeThing\\testfile', '多余的内容')

将new_name = name.replace(keyword, '') 中的单引号的内容清空。

在rename('D:\\SomeThing\\testfile', '多余的内容') 中将a修改为多余的内容。

再次执行

如图:

本代码可举一反三。

【Python】简单的脚本,轻松批量修改文件名称的更多相关文章

  1. node批量修改文件名称

    let fs = require('fs');//引用文件系统模块 let PATH = `./app_zijietiaodong/`;//当前文件夹 let ext = { readFileList ...

  2. Java实现批量修改文件名称

    import java.io.File; import java.util.HashMap; import java.util.Map; import java.util.Map.Entry; /** ...

  3. php实现批量修改文件名称

    场景叙述:比如我要将D:\WWW\img\Gastroenterology这个文件夹下图片要重新命名成1.jpg,2.jpg.......这样的有规律名字, 如下图: 那么我们就可以利用php的ren ...

  4. php批量修改文件名称

    <?php//利用PHP目录和文件函数遍历用户给出目录的所有的文件和文件夹,修改文件名称function fRename($dirname){ if(!is_dir($dirname)){ ec ...

  5. python批量修改文件名称

    参考文章:http://www.cnblogs.com/ma6174/archive/2012/05/04/2482378.html 最近遇到一个问题,在网上下载了一批视频课程,需要将每节课的名称标号 ...

  6. windows powershell上批量修改文件名称

    $i = Get-ChildItem -Path c:\pictures -Filter *.jpg | ForEach-Object { $extension = $_.Extension $new ...

  7. IO流-批量修改文件名称案例

    /* *   源文件名:   桌面-我们今天学习IO流了哈哈哈哈-001.jpg *   修改后文件名:  桌面-000x.jpg */public class File_listFiles_upda ...

  8. excel批量修改文件名称

    步骤: 1. 然后将标准号所在的列复制三份到旁边相邻的空白列 2. 使用方方格子让三列中最左面的列只保存如下格式的数据: DB37/T或DB37/ 3. 使用方方格子让三列中中间的列的只保存如下格式的 ...

  9. 用shell脚本批量修改文件后缀名

    早上本想将一些照片上传到相册中,但是由于所有照片的扩展名都是JPG而不是小写的jpg,因此造成了“格式不正确”而不能上传照片.此刻就产生了这样一个问题:使用shell脚本如何批量将所有文件的扩展名JP ...

随机推荐

  1. 【jenkins】构建工作集

    构建工作集,参数化工作任务 1.New Item 2.配置新的工作任务 3.关联测试用例的远程仓库 4.添加任务构建后,触发发送报告信息 5.新建单个测试套件 6.添加触发轮询任务 7.关联测试集 8 ...

  2. SpringBoot整合Swagger2详细教程

    1. 简介   随着前后端分离开发模式越来越流行,编写接口文档变成了开发人员非常头疼的事.而Swagger是一个规范且完整的web框架,用于生成.描述.调用可视化的RESTful风格的在线接口文档,并 ...

  3. ubuntu ImportError: No module named setuptools 一句命令解决方案

    https://blog.csdn.net/Super_jm_/article/details/81947563 使用pip安装文件时候提示  ImportError: No module named ...

  4. 磁盘inode节点被占满的解决方法

    问题: Linux服务器,查看日志发现程序无法继续写文件,但是用df -h查看磁盘容量还有剩余. 排查思路:怀疑是机器的inode节点被占满,使用df -i查看磁盘inode节点使用情况,果然是ino ...

  5. SpringCloud 源码系列(4)—— 负载均衡 Ribbon

    一.负载均衡 1.RestTemplate 在研究 eureka 源码上篇中,我们在 demo-consumer 消费者服务中定义了用 @LoadBalanced 标记的 RestTemplate,然 ...

  6. 移动端 canvas统计图

    一.折线图 1. 获取画布画笔 2. 封装画线的方法 3. 画坐标轴 4. 循环数据画横轴 > 4.1 画刻度 > 4.2 刻度文字 > 4.3 画折线 > 4.4 画点 5. ...

  7. [OI笔记]杂题整理1(基础篇~)

    算是开学第四周啦,之前的三周大概过了一遍基础图论和数学相关的内容.这篇随笔打算口胡一些近期做感觉比较好的数学相关的题目 因为这段时间主要是看紫书学的,所以其实会有些出自UVA的例题,如果需要题目但是觉 ...

  8. Flink如何做维表关联?

    使用 RichAsyncFunction 加 CacheBuilder CacheBuilder.newBuilder() //最多存储10000条 .maximumSize(10000) //过期时 ...

  9. Thymeleaf的th

    th:action 定义后台控制器路径,类似<form>标签的action属性. <form id="login-form" th:action="@{ ...

  10. 多任务-python实现-使用队列完成进程间的通信(2.1.8)

    @ 目录 1.为什么要使用队列 2.python代码实现 1.为什么要使用队列 进程之间是互相独立的,而线程能够共享全局变量 所以如果进程间想要交换数据的话 只有通过进程间的通信,比如socket.太 ...