Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/304.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用python中的boto以编程方式删除s3 bucket上文件名中的空格?_Python_Amazon Web Services_Amazon S3_Boto3_File Rename - Fatal编程技术网

如何使用python中的boto以编程方式删除s3 bucket上文件名中的空格?

如何使用python中的boto以编程方式删除s3 bucket上文件名中的空格?,python,amazon-web-services,amazon-s3,boto3,file-rename,Python,Amazon Web Services,Amazon S3,Boto3,File Rename,因此,我的s3存储桶中有1000个文件。但是,文件名包含空格。我想使用boto-python以编程方式将空格替换为“\u1”。我如何做到这一点 谢谢 文件名快照: 在Amazon S3中无法重命名对象 相反,您需要调用CopyObject()来复制对象,然后调用DeleteObject()来删除原始对象 或者,这里有一个我使用的作弊方法: 我用文件名创建了一个Excel电子表格 然后,在B列中,我创建了一个公式,将空格转换为下划线,这样它就包含了所需的名称 在C列中,我编写了一个重命名对象的命

因此,我的s3存储桶中有1000个文件。但是,文件名包含空格。我想使用boto-python以编程方式将空格替换为“\u1”。我如何做到这一点

谢谢

文件名快照:

在Amazon S3中无法重命名对象

相反,您需要调用
CopyObject()
来复制对象,然后调用
DeleteObject()
来删除原始对象

或者,这里有一个我使用的作弊方法

  • 我用文件名创建了一个Excel电子表格
  • 然后,在B列中,我创建了一个公式,将空格转换为下划线,这样它就包含了所需的名称
  • 在C列中,我编写了一个重命名对象的命令,如下所示:
  • 通过将命令粘贴到终端窗口来测试该命令
  • 如果有效,请使用向下复制为所有文件创建公式
  • 复制该列,将其粘贴到
    .sh
    文件中,然后运行该文件(最好在Amazon EC2实例上运行,以减少网络延迟)

AWS CLI
AWS s3 mv
命令将调用
CopyObject()
DeleteObject()

到目前为止您尝试了什么?我没有执行任何操作,我尝试了查找完成此任务的不同方法。目前还不知道。一篇帖子说复制到另一个文件名不同的对象。不确定这是否有效。太棒了!这就像魔术
="aws s3 mv 's3://bucketname/"&A1&"' s3://bucketname/"&B1