对文件定制做cp操作,大概可以分为3个步骤
1、先列出目录下需要复制的文件--可用os.listdir方法
2、对时间进行判断:比如每天9点-10点执行,或者每隔5秒执行等
3、对文件进行复制 --shutil.copy方法
#!/usr/bin/python
# -*- coding: utf8 -*-
import os
import shutil
import traceback
import time
srcp_7002 ='/project/ducc03/sx_bill/sourfile/lq/7002/src'
destp_7002 = '/project/ducc03/sx_bill/sourfile/dk/DA4G/7002/'
srcp1_7002 ='/project/ducc03/sx_bill/sourfile/lq/7002/src1'
destp_7002 = '/project/ducc03/sx_bill/sourfile/dk/DA4G/7002/'
srcp_6113 ='/project/ducc03/sx_bill/sourfile/lq/6113/src'
destp_6113 = '/project/ducc03/sx_bill/sourfile/dk/3GVI/6113/'
srcp1_6113 ='/project/ducc03/sx_bill/sourfile/lq/7004/src'
destp2_6113 = '/project/ducc03/sx_bill/sourfile/zj/3GVI/'
#链路名称:dk_6113,dk_7002,123_7002,zj_6113_3GVI
#colpath = [(srcp_7002,destp_7002),(srcp1_7002,destp_7002),(srcp_6113,destp_6113),(srcp1_6113,destp2_6113)]
colpath = [(srcp1_6113,destp2_6113)]
#遍历目录,找出文件,并批量复制
def createFile7002():
for linkp in colpath:
src_files = os.listdir(linkp[0])
st = int(time.time())
for file in src_files:
for i in range(0,2000):
src_file = os.path.join(linkp[0], file)
# print(src_file)
file_name = '%s_%s_%s.txt' %(file,st,i)
dest_file = os.path.join(linkp[1],file_name)
final_file = shutil.copy(src_file,dest_file)
# print(final_file)
if __name__ == "__main__":
'''
定时做cp操作
time_1 = time.time()
curtime = time.strftime("%Y/%m/%d %H:%M:%S", time.localtime(time_1))
datetime1 = '2022/05/07 12:50:00'
datetime2 = '2022/05/07 14:20:00'
print('当前时间:%s' %(curtime))
if curtime > datetime1 and curtime < datetime2:
print('时间在%s和%s之间,执行' %(datetime1,datetime2))
createFile7002()
else:
print('时间不在%s和%s之间,不执行' %(datetime1,datetime2))
'''
createFile7002()