两个复制和重命名的case,方式一是数字后缀,方式二是固定后缀

C:\Users\fengli.zuo\New folder
CopyAndChangeCasesNameWithnum.py 和CopyAndChangeCasesName.py 后缀为CSIRS
不完善的地方:一些保护措施不完善,溢出,超值,退出程序,下一步,修改文件内容
------CopyAndChangeCasesNameWithnum.py-------

-- coding: gbk --

#拷贝文件并且按照规则重命名
#命名规则:给定前缀或者后缀 添加编号
import os
import time
import shutil
import sys
#sourceDir=“C:\Users\zxl\Desktop\图片”

def createTargetDir(sourceDir):
print("------------给定的源文件夹不存在,则新创建--------------")
if not os.path.isdir(sourceDir):
print(“给定的源文件夹不存在,请检查”);
return;

targetDir=sourceDir+'\\test2'

if not os.path.isdir(targetDir):
    os.mkdir(targetDir)
    print('创建目标文件夹为:%s'% targetDir)
else:
    print('目标文件夹:%s  已存在,需要删除!'% targetDir)
    shutil.rmtree(targetDir,True)
    os.mkdir(targetDir)
return targetDir

def copyAndRename(sourceDir,targetDir):
print(’-----------批量复制并且重命名start---------------’)
fileList=os.listdir(sourceDir)
print(‘fileList:%s’% fileList)
print(‘sourceDir:%s—>targetDir:%s’%(sourceDir,targetDir))
fobj=open(targetDir+’\test2.txt’,‘w’)
i=1

for f in fileList:   
    if os.path.isdir(os.path.join(sourceDir,f)):#join?什么功能
        continue
    index=f.rfind('.')
    #print('index:%s'% index)
    fileName=f[:index]#文件名
    fileExt=f[index:]#文件扩展名
    fileNameWithExt=os.path.basename(f)#文件全名
    sf=os.path.join(sourceDir,f)

    if i<10:
     suffix='00'+('%s' %i)
    elif i>9 and i<100:
     suffix='0'+('%s' %i)
    else:
     suffix=('%s' %i)

    newFileName=('%s_%s%s' % ('tcnr_003_006',suffix,fileExt))
    tf=os.path.join(targetDir,newFileName)
    print('%s -->>%s' % (fileNameWithExt,newFileName))
    fobj.writelines('%s -->>%s\n' % (fileNameWithExt,newFileName))
    if(os.path.isfile(sf)):
       shutil.copyfile(sf, tf)
    i+=1
print('-----------批量复制并且重命名end---------------')

def testDomain():
print(’-----------------------test----------------------’)
global rule
rule=200
print(rule)

if name == ‘main’: #程序运行入口
print(’-----------------------zxl----------------------’)
while(True):
sd=input(‘Enter sourceDir with ‘’,eg1:r"C:/Users/fengli.zuo/New folder":’)
print(‘给定的源文件夹为:%s’ % sd)
td=createTargetDir(sd)
copyAndRename(sd,td)
input(‘Enter the any press to exit’ )
break
#---------------------
#作者:皓月行空
#来源:优快云
#原文:https://blog.youkuaiyun.com/zhaoxinglin123/article/details/72846827
#版权声明:本文为博主原创文章,转载请附上博文链接!


------CopyAndChangeCasesName.py--------

-- coding: gbk --

#拷贝文件并且按照规则重命名
#命名规则:给定前缀或者后缀 添加编号
import os
import time
import shutil
import sys
#sourceDir=“C:\Users\zxl\Desktop\图片”

def createTargetDir(sourceDir):
print("------------给定的源文件夹不存在,则新创建--------------")
if not os.path.isdir(sourceDir):
print(“给定的源文件夹不存在,请检查”);
return;

targetDir=sourceDir+'\\test1'

if not os.path.isdir(targetDir):
    os.mkdir(targetDir)
    print('创建目标文件夹为:%s'% targetDir)
else:
    print('目标文件夹:%s  已存在,需要删除!'% targetDir)
    shutil.rmtree(targetDir,True)
    os.mkdir(targetDir)
return targetDir

def copyAndRename(sourceDir,targetDir):
print(’-----------批量复制并且重命名start---------------’)
fileList=os.listdir(sourceDir)
print(‘fileList:%s’% fileList)
print(‘sourceDir:%s—>targetDir:%s’%(sourceDir,targetDir))
fobj=open(targetDir+’\test1.txt’,‘w’)

for f in fileList:   
    if os.path.isdir(os.path.join(sourceDir,f)):#join?什么功能
        continue
    index=f.rfind('.')
    #print('index:%s'% index)
    fileName=f[:index]#文件名
    fileExt=f[index:]#文件扩展名
    fileNameWithExt=os.path.basename(f)#文件全名
    sf=os.path.join(sourceDir,f)

    suffix='CSIRS'
    newFileName=('%s_%s%s' % (fileName,suffix,fileExt))
    tf=os.path.join(targetDir,newFileName)
    print('%s -->>%s' % (fileNameWithExt,newFileName))
    fobj.writelines('%s -->>%s\n' % (fileNameWithExt,newFileName))
    if(os.path.isfile(sf)):
       shutil.copyfile(sf, tf)
print('-----------批量复制并且重命名end---------------')

def testDomain():
print(’-----------------------test----------------------’)
global rule
rule=200
print(rule)

if name == ‘main’: #程序运行入口
print(’-----------------------zxl----------------------’)
while(True):
sd=input(‘Enter sourceDir with ‘’,eg1:r"C:/Users/fengli.zuo/New folder":’)
print(‘给定的源文件夹为:%s’ % sd)
td=createTargetDir(sd)
copyAndRename(sd,td)
input(‘Enter the any press to exit’ )
break
#---------------------
#作者:皓月行空
#来源:优快云
#原文:https://blog.youkuaiyun.com/zhaoxinglin123/article/details/72846827
#版权声明:本文为博主原创文章,转载请附上博文链接!

From: Fengli Zuo (左凤丽)
Sent: Wednesday, October 24, 2018 9:45 AM
To: Fengli Zuo (左凤丽)
Subject: RE: 使用python, 复制问题

能够拷贝文件,并重命名(加钱后缀的方式,):下一步,修改名字eg003_066_xxx 替换成tcnr003_066_7xx;修改文件内容

-- coding: gbk --

#拷贝文件并且按照规则重命名
#命名规则:给定前缀或者后缀 添加编号
import os
import time
import shutil
import sys
#sourceDir=“C:\Users\zxl\Desktop\图片”

def createTargetDir(sourceDir):
print("------------给定的源文件夹不存在,则新创建--------------")
if not os.path.isdir(sourceDir):
print(“给定的源文件夹不存在,请检查”);
return;

targetDir=sourceDir+'\\test'

if not os.path.isdir(targetDir):
    os.mkdir(targetDir)
    print('创建目标文件夹为:%s'% targetDir)
else:
    print('目标文件夹:%s  已存在,需要删除!'% targetDir)
    shutil.rmtree(targetDir,True)
    os.mkdir(targetDir)
return targetDir

def copyAndRename(sourceDir,targetDir,rule):
print(’-----------批量复制并且重命名start---------------’)
fileList=os.listdir(sourceDir)
print(‘fileList:%s’% fileList)
print(‘sourceDir:%s—>targetDir:%s’%(sourceDir,targetDir))
fobj=open(targetDir+’\test.txt’,‘w’)

ruleIndexPrefix=rule.rfind('prefix:')#输入的rule,eg1 prefix:2018
ruleIndexSuffix=rule.rfind('suffix:')
pre=rule[ruleIndexPrefix+7:rule.rfind('suffix:')-1]#从:到结尾name = str[str.rfind("/")+1:str.rfind(".")] 
suf=rule[ruleIndexSuffix+7:]

for f in fileList:   
    if os.path.isdir(os.path.join(sourceDir,f)):#join?什么功能
        continue
    index=f.rfind('.')
    #print('index:%s'% index)
    fileName=f[:index]#文件名
    fileExt=f[index:]#文件扩展名
    fileNameWithExt=os.path.basename(f)#文件全名
    sf=os.path.join(sourceDir,f)
    newFileName=('%s%s' % (fileName,fileExt))
    if rule.rfind('pre')!=-1 & rule.rfind('suf')!=-1:
        print('pre & suf')
        newFileName=('%s-%s-%s%s'%(pre,fileName,suf,fileExt))
    elif rule.rfind('pre')!=-1 & rule.rfind('suf')==-1:
        print('pre')
        newFileName=('%s-%s'%(pre,newFileName))
    elif rule.rfind('pre')==-1 & rule.rfind('suf')!=-1:
        print('suf')
        newFileName=('%s-%s%s'%(fileName,suf,fileExt))
    tf=os.path.join(targetDir,newFileName)
    print('%s -->>%s' % (fileNameWithExt,newFileName))
    fobj.writelines('%s -->>%s\n' % (fileNameWithExt,newFileName))
    if(os.path.isfile(sf)):
       shutil.copyfile(sf, tf)
print('-----------批量复制并且重命名end---------------')

def testDomain():
print(’-----------------------test----------------------’)
global rule
rule=200
print(rule)

if name == ‘main’: #程序运行入口
print(’-----------------------zxl----------------------’)
while(True):
sd=input(‘Enter sourceDir with ‘’,eg1:r"C:/Users/fengli.zuo/New folder":’)
print(‘给定的源文件夹为:%s’ % sd)
rule=input("'Enter nameRule,eg1:‘prefix:ls’ eg2:‘suffix:ls’,eg3:‘prefix:new suffix:2018’")
td=createTargetDir(sd)
copyAndRename(sd,td,rule)
input(‘Enter the any press to exit’ )
break
#---------------------
#作者:皓月行空
#来源:优快云
#原文:https://blog.youkuaiyun.com/zhaoxinglin123/article/details/72846827
#版权声明:本文为博主原创文章,转载请附上博文链接!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值