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中,右键点击我们要进行修改的文件,然后又一项重构,我们就可以进行对文件的重命名. 接下来点击重命名进行文件或者文件夹的重新命名. 在框中输入 ...
随机推荐
- LTC2440串行SPI通讯时序
LTC2440 简介 我们使用4-wire SPI接口 按照时序图上的描述,SDO是在SCLK的下降沿更新数据,那么FPGA接收端就应该在上升沿采集数据. 实际测试发现SDO数据相对于SCLK延迟了6 ...
- win32com操作word API精讲 第十集 Paragraphs & Paragraph接口 (一)
本课程<win32com操作word API精讲&项目实战>以视频为主,文字为辅,公众号ID:一灯编程 在word编程中,Range和Paragraph(s)接口无愧于劳模接口的称 ...
- elasticsearch中使用runtime fields
1.背景 在我们使用es的开发过程中可能会遇到这么一种情况,比如我们的线路名称字段lineName字段在设置mapping的时候使用的是text类型,但是后期发现需要使用这个字段来进行聚合操作,那么我 ...
- Task记录1.CancellationToken 取消Task任务的操作
//1.创建取消令牌数据 CancellationTokenSource tokenSource = new CancellationTokenSource(); //2.创建取消令牌 Cancell ...
- C-05\函数的底层原理
一.程序运行时内存四大区 wres(内存属性): w:write(可写) r:read(可读) e:execute(可执行) s:share(可共享) 任何操作系统(windows.liunx.安卓. ...
- vuluhub_jangow-01-1.0.1
前言 靶机:jangow-01-1.0.1 攻击机:kali linux2022.4 靶机描述 打靶ing 靶机探测 使用nmap扫描网段 点击查看代码 ┌──(root㉿kali)-[/home/k ...
- Three.js 进阶之旅:物理效果-碰撞和声音 💥
摘要 本文内容主要汇总如何在 Three.js 创建的 3D 世界中添加物理效果,使其更加真实.所谓物理效果指的是对象会有重力,它们可以相互碰撞,施加力之后可以移动,而且通过铰链和滑块还可以在移动过程 ...
- CMakeList汇总
cmake_minimum_required(VERSION 2.8.3) PROJECT (HELLO) #工程名 set(CMAKE_BUILD_TYPE "Debug")se ...
- JavaScript 日期和时间的格式化
一.日期和时间的格式化 1.原生方法 1.1.使用 toLocaleString 方法 Date 对象有一个 toLocaleString 方法,该方法可以根据本地时间和地区设置格式化日期时间.例如: ...
- CSS动画,盒子爬坡源码
html: <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...