Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.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
Amazon s3 在AmazonS3存储桶中移动文件_Amazon S3_S3cmd - Fatal编程技术网

Amazon s3 在AmazonS3存储桶中移动文件

Amazon s3 在AmazonS3存储桶中移动文件,amazon-s3,s3cmd,Amazon S3,S3cmd,我已经在s3 bucket上上传了文件。 但由于我的错误,s3cmd将文件上载到s3://backups/files/bkup14,而不是s3://backups/bkup14。 现在,为了将s3://backups/files/bkup14下的所有文件移动到s3://backups/bkup14,我尝试了以下命令: s3cmd mv——递归s3://backups/files/bkup14 s3://backups/bkup14 但它给了我以下的错误: ERROR: S3 error: 400

我已经在s3 bucket上上传了文件。 但由于我的错误,s3cmd将文件上载到s3://backups/files/bkup14,而不是s3://backups/bkup14。 现在,为了将s3://backups/files/bkup14下的所有文件移动到s3://backups/bkup14,我尝试了以下命令:

s3cmd mv——递归s3://backups/files/bkup14 s3://backups/bkup14

但它给了我以下的错误:

ERROR: S3 error: 400 (InvalidRequest): This copy request is illegal because it is trying to copy an object to itself without changing the object's metadata, storage class, website redirect location or encryption attributes.

我做错了什么?有人能推荐我吗?

先尝试同步存储桶(总是先进行干运行):

然后删除不再需要的文件夹:

s3cmd del --recursive s3://backups/files/bkup14 --dry-run
s3cmd del --recursive s3://backups/files/bkup14
AWS S3 bucket名称空间由系统的所有用户共享,因此除非您非常幸运地捕获了备份bucket,否则您的s#bucket很可能是其他东西

下面是上述测试和证明的示例

s3cmd sync s3://backups-stackoverflow-demo/files/bkup14/ s3://backups-stackoverflow-demo/bkup14/ --dry-run
  Summary: 1 source files to copy, 0 files at destination to delete
  Sync: s3://backups-stackoverflow-demo/files/bkup14/test.txt -> s3://backups-stackoverflow-demo/bkup14/test.txt
  WARNING: Exitting now because of --dry-run

s3cmd sync s3://backups-stackoverflow-demo/files/bkup14/ s3://backups-stackoverflow-demo/bkup14/
  Summary: 1 source files to copy, 0 files at destination to delete
  File s3://backups-stackoverflow-demo/files/bkup14/test.txt copied to s3://backups-stackoverflow-demo/bkup14/test.txt
  Done. Copied 1 files in 0.1 seconds, 16.72 files/s

s3cmd del --recursive s3://backups-stackoverflow-demo/files/bkup14 --dry-run
  delete: s3://backups-stackoverflow-demo/files/bkup14/
  delete: s3://backups-stackoverflow-demo/files/bkup14/test.txt
  WARNING: Exitting now because of --dry-run

s3cmd del --recursive s3://backups-stackoverflow-demo/files/bkup14
  File s3://backups-stackoverflow-demo/files/bkup14/ deleted
  File s3://backups-stackoverflow-demo/files/bkup14/test.txt deleted

我尝试使用您的命令同步bucket,但出现错误:参数问题:源/目标无效我希望您没有逐字复制命令,并用实际bucket替换bucket名称“backup”。s3cmd ls的输出是什么?
s3cmd sync s3://backups-stackoverflow-demo/files/bkup14/ s3://backups-stackoverflow-demo/bkup14/ --dry-run
  Summary: 1 source files to copy, 0 files at destination to delete
  Sync: s3://backups-stackoverflow-demo/files/bkup14/test.txt -> s3://backups-stackoverflow-demo/bkup14/test.txt
  WARNING: Exitting now because of --dry-run

s3cmd sync s3://backups-stackoverflow-demo/files/bkup14/ s3://backups-stackoverflow-demo/bkup14/
  Summary: 1 source files to copy, 0 files at destination to delete
  File s3://backups-stackoverflow-demo/files/bkup14/test.txt copied to s3://backups-stackoverflow-demo/bkup14/test.txt
  Done. Copied 1 files in 0.1 seconds, 16.72 files/s

s3cmd del --recursive s3://backups-stackoverflow-demo/files/bkup14 --dry-run
  delete: s3://backups-stackoverflow-demo/files/bkup14/
  delete: s3://backups-stackoverflow-demo/files/bkup14/test.txt
  WARNING: Exitting now because of --dry-run

s3cmd del --recursive s3://backups-stackoverflow-demo/files/bkup14
  File s3://backups-stackoverflow-demo/files/bkup14/ deleted
  File s3://backups-stackoverflow-demo/files/bkup14/test.txt deleted