我已经写了一个代码来删除旧的文件并保留最新的。我的代码在本地工作,但希望在访问AWS s3 bucket文件夹时应用相同的代码来执行类似的操作
当提供本地路径时,代码工作正常
import os
import glob
path = r'C:\Desktop\MyFolder'
allfiles =[os.path.basename(file) for file in glob.glob(path + '\*.*')]
diff_pattern=set()
deletefile=[]
for file in allfiles:
diff_pattern.add('_'.join(file.split('_',2)[:2]))
print('Pattern Found - ',diff_pattern)
for pattern in diff_pattern:
patternfiles=[os.path.basename(file) for file in glob.glob(path + '\\'+pattern+'_*.*')]
patternfiles.sort()
if len(patternfiles)>1:
deletefile=deletefile+patternfiles[:len(patternfiles)-1]
print('Files Need to Delete - ',deletefile)
for file in deletefile:
os.remove(path+'\\'+file)
print('File Deleted')
我希望同样的代码也适用于awss3。下面是我正在处理的文件格式和状态(keep/delete)的示例
文件格式:file\u name\u yyyyMMdd.txt
v\u xyz\u 20190501.txt删除 v\u xyz\u 20190502.txt保留 v\u xyz\u 20190430.txt删除 v\u abc\u 20190505.txt保存 v\u abc\u 20190504.txt删除
我认为你不能像本地路径那样访问S3文件
您可能需要使用python中的boto3库来访问s3文件夹
下面是一个示例,让您看看它是如何工作的
https://dluo.me/s3databoto3
相关问题 更多 >
编程相关推荐