python查找文件、移动、重命名、压缩
在文件同级目录下存在sourcefile、targetfile两个文件夹,源文件放在sourcefile
import os
import shutil Apath = os.path.dirname(os.path.abspath(__file__)) #查找文件复制到指定路径并重命名
def replacefile():
fs = ["rcds-dao-1.5.0-RELEASE.jar",
"rcds-biz-1.5.0-RELEASE.jar",
"rcds-type-1.5.0-RELEASE.jar",
"rcds-service-1.5.0-RELEASE.jar",
"rdsmnt-core-1.5.0-RELEASE.jar",
"rdsmnt-web-1.5.0-RELEASE.jar",
"rdsos-dao-1.5.0-RELEASE.jar",
"rdsos-engine-1.5.0-RELEASE.jar",
"rdsos-core-1.5.0-RELEASE.jar",
"rdsos-cache-1.5.0-RELEASE.jar",
"rdsos-biz-1.5.0-RELEASE.jar",
"rdsos-service-1.5.0-RELEASE.jar",
"dss-dao-1.5.0-RELEASE.jar",
"dss-core-1.5.0-RELEASE.jar",
"dss-type-1.5.0-RELEASE.jar",
"ps-core-1.5.0-RELEASE.jar",
"ps-dao-1.5.0-RELEASE.jar",
"ps-client-1.5.0-RELEASE.jar",
"rds-cache-1.5.0-RELEASE.jar",
"rds-engine-1.5.0-RELEASE.jar",
"rds-redis-1.5.0-RELEASE.jar",
"rds-core-1.5.0-RELEASE.jar",
"rds-common-1.5.0-RELEASE.jar",
"rds-biz-1.5.0-RELEASE.jar",
"rds-dao-1.5.0-RELEASE.jar",
"rds-service-1.5.0-RELEASE.jar",
"rcds-.zip",
"rdsmnt-.zip",
"rdsos-.zip",
"dss-.zip",
"ps-.zip",
"rds-.zip"] fsre = ["rcds-dao.jar",
"rcds-biz.jar",
"rcds-type.jar",
"rcds-service.jar",
"rdsmnt-core.jar",
"rdsmnt-web.jar",
"rdsos-dao.jar",
"rdsos-engine.jar",
"rdsos-core.jar",
"rdsos-cache.jar",
"rdsos-biz.jar",
"rdsos-service.jar",
"dss-dao.jar",
"dss-core.jar",
"dss-type.jar",
"ps-core.jar",
"ps-dao.jar",
"ps-client.jar",
"rds-cache.jar",
"rds-engine.jar",
"rds-redis.jar",
"rds-core.jar",
"rds-common.jar",
"rds-biz.jar",
"rds-dao.jar",
"rds-service.jar",
"rcds-war.jar",
"rdsmnt-war.jar",
"rdsos-war.jar",
"dss-war.jar",
"ps-war.jar",
"rds-war.jar"] path = Apath +"\\sourcefile"
newpath = Apath +"\\targetfile"
os.system("del /f /q %s" % newpath) #清空目标文件夹 i = 0
for i in range(len(fs)):
name = fs[i]
rename =fsre[i]
oldpath = search(path, name)
#print(oldpath)
if oldpath != None:
shutil.copy(oldpath, newpath)
os.chdir(newpath) #进入指定目录
os.rename(name,rename) #重命名 #查找文件并返回绝对路径
def search(path, name):
for item in os.listdir(path):
item_path = os.path.join(path, item)
if os.path.isdir(item_path):
result = search(item_path, name)
if result:
return result
elif os.path.isfile(item_path):
if name == item:
oldpath = item_path
#print(oldpath)
return oldpath #压缩文件夹
def filezip():
zs = ["rcds-",
"rdsmnt-",
"rdsos-",
"dss-",
"ps-",
"rds-"] path = Apath + "\\sourcefile" m = 0
for item in os.listdir(path):
item_path = os.path.join(path, item)
if os.path.isdir(item_path):
for m in range(len(zs)):
name = zs[m]
if name in item:
#print(name)
if name =="rdsmnt-":
basepath = item_path
#print(item_path)
base_dir = basepath + "\\WEB-INF\\classes\\com\\suning\\framework"
base_name = basepath +"\\"+ name
shutil.make_archive(base_name, 'zip', base_dir)
elif name !="rdsmnt-":
basepath = item_path
base_dir = basepath + "\\WEB-INF\\classes\\com\\suning\\snb"
base_name = basepath +"\\"+ name
shutil.make_archive(base_name, 'zip', base_dir) if __name__ == '__main__':
filezip()
replacefile()
python查找文件、移动、重命名、压缩的更多相关文章
- 利用Python对文件批量重命名
由于要用到对无序的文件进行重命名,以下写了一个脚本,进行批量进行重命名. 基本格式是 i.后缀名 ( i 循环条件下的数 ) 1 #coding:utf8 2 import os; 3 4 def ...
- Python批量复制和重命名文件
Python批量复制和重命名文件 示例代码 #! /usr/bin/env python # coding=utf-8 import os import shutil import time impo ...
- linux安装PyCharm,PyCharm常用快捷键及调试模式,pycharm里面对文件夹或者文件进行重命名
PyCharm常用快捷键及调试模式 2017年10月18日 23:13:43 菜鸟之神 阅读数:5835 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn ...
- 利用php实现文件迁移重命名
首先表明,这是一个悲伤的故事. 暑假来临,学校安排我们到某软件外包公司实习,想想不用面试也是蛮方便的,可以借此机会向大牛学习学习,虽然没有工资(据说学校还交了600块的保险),但想想还是蛮期待的,但真 ...
- ASP FSO操作文件(复制文件、重命名文件、删除文件、替换字符串)
ASP FSO操作文件(复制文件.重命名文件.删除文件.替换字符串)FSO的意思是FileSystemObject,即文件系统对象.FSO对象模型包含在Scripting 类型库 (Scrrun.Dl ...
- C#实现文件批量重命名源码下载
本文要实现的功能是 文件批量重命名,当选择一个文件夹时,通过操作可以把文件夹下面所有文件进行重命名.建立了HoverTreeBatch项目. 然后 定义文件夹信息: DirectoryInfo _Th ...
- 当git上文件大小写重命名的修改时(git大小写敏感/默认不敏感),如何提交
git默认是大小写不敏感!!! 加了感叹号是什么意思呢,意思就是这本身就是一个坑,本人使用的IDE是idea(网上说Eclipse可以避开问题),这个IDE本身就集成了git,但是如果要在termin ...
- 解决 win10 新建文件夹重命名卡死的另一种方法
遇到 win10 新建文件夹重命名卡死时 根据网上的各种方法都不起作用时可以试一下这个方法. 文件夹属性 --- 自定义 --- 你想要那种文件夹 优化此文件夹 --- 把 [视频] 改成 [常规项目 ...
- Java实现文件批量重命名
Windows操作系统可以实现重命名文件操作,却不能实现批量重命名.本实例实现了批量重命名功能,可以将一个文件夹内同一类型的文件按照一定的规则批量重命名.用户可以给出重命名模板,程序可以根据模板对相应 ...
- phpstorm如何进行文件或者文件夹重命名
1.phpstorm的重构 1.1重命名 在phpstorm中,右键点击我们要进行修改的文件,然后又一项重构,我们就可以进行对文件的重命名. 接下来点击重命名进行文件或者文件夹的重新命名. 在框中输入 ...
随机推荐
- 【Dubbo3终极特性】「云原生三中心架构」带你探索Dubbo3体系下的配置中心和元数据中心、注册中心的原理及开发实战(上)
Dubb3的应用级服务发现 Dubbo3提供了全新的应用级服务发现模型,该模型在设计与实现上区别于 Dubbo2 的接口级服务发现模型. 概括来说,Dubbo3 引入的应用级服务发现主要有以下优势 适 ...
- 数据库实践丨使用MTK迁移Mysql源库后主键自增列导致数据无法插入问题
摘要:用户使用Mogdb 2.0.1版本进行业务上线测试,发现在插入数据时,应用日志中提示primary key冲突,用户自查业务SQL没有问题,接到通知后,招手处理故障. 本文分享自华为云社区< ...
- linux命令与公私钥
昨日内容回顾 etc目录 配置相关 /etc/profile 环境变量文件 /etc/motd 开机欢迎界面 usr目录 程序相关 四种安装软件的方式 1.yum安装 自动解决依赖性问题 2.rap安 ...
- 创建进程的多种方式、多进程实现TCP并发等知识点
创建进程的多种方式.多进程实现TCP并发等知识点 一.同步与异步 1.提交完成任务之后原地等待任务的返回结果,期间不做任何事 2.提交完任务之后不愿原地等待任务的返回结果,直接去做其他事情,有结果自动 ...
- hashlib加密模块及subprocess远程命令模块
hashlib加密模块及subprocess远程命令模块 一.hashlib加密模块 1.加密模块简介 1.加密模块简介 将明文数据进行加密处理,转变为密文数据再存储或者传输,这样的安全机制可以让用户 ...
- 字节输出流的续写和换行-字节输入流_inputS Stream类
字节输出流的续写和换行 package demo02.OutputStream; import java.io.FileOutputStream; import java.io.IOException ...
- FAQ docker进程启动失败处理案例分享
docker进程启动失败处理 背景 有同学反馈在启动docker的时候遇到了如下问题:docker启动报错 [root@wuxianfeng ~]# systemctl start docker Jo ...
- vue3 vite 使用NProgress.js纳米级进度条
NProgress.js 官网:https://ricostacruz.com/nprogress/ 安装方式: npm install nprogress 使用方法 在router 的index.j ...
- Cobalt Strike 之:会话管理
郑重声明: 本笔记编写目的只用于安全知识提升,并与更多人共享安全知识,切勿使用笔记中的技术进行违法活动,利用笔记中的技术造成的后果与作者本人无关.倡导维护网络安全人人有责,共同维护网络文明和谐. Co ...
- CCRD_TOC_2007年11月_总第12期
中信国健临床通讯 2007年11月, 总第12期 目 录 类风湿关节炎 1 MRI证实Etanercept治疗的RA患者中尽管关节炎症还在持续但是骨侵蚀进展停止 Dohn UM, et al. C ...