我已经成功地将本地服务器上的文件上传到了本地目录,并将其上传到我的测试s3存储桶中。 当目录上载到s3时,我挣扎的地方是,我希望删除本地服务器上的那些目录。理想情况下,我想保留最后添加的10个文件。 “因为我会积极地从后台程序中写入这些信息,并希望不会破坏它。”
我不是python中最强的,并且很难弄清楚如何将删除部分添加到当前的python脚本中。任何帮助或建议都会有所帮助。
import os, time, sys
import boto3
s3_resource = boto3.resource("s3", region_name="us-east-2")
def upload_objects():
try:
bucket_name = "Testbucket" #s3 bucket name
root_path = 'C:/Path/Test/' # local folder for upload
my_bucket = s3_resource.Bucket(bucket_name)
for path, subdirs, files in os.walk(root_path):
path = path.replace("\\","/")
directory_name = path.replace(root_path,"")
for file in files:
my_bucket.upload_file(os.path.join(path, file), directory_name+'/'+file)
except Exception as err:
print(err)
if __name__ == '__main__':
upload_objects()