根据 https://docs.aws.amazon.com/cli/latest/reference/s3api/put-object.html
使用 AWS S3API 将文件放入存储桶的行是
aws s3api put-object --bucket text-content --key dir-1/my_images.tar.bz2 --body my_images.tar.bz2
我使用上面的例子将我的文件放入存储桶中:
$ aws s3api put-object --bucket mybucket-witha3api2 --key
test/TestDataforAWSs3api.txt --body TestDataforAWSs3api.txt
{
"ETag": ""d41d8cd98f00b204e9800998ecf8427e""
}
列出存储桶后,我看到以下内容:
aws s3 ls s3://mybucket-witha3api2/test
PRE test/
我不确定 TestDataforAWSs3api 文件在哪里.txt什么是 PRE?你能解释一下我的CL有什么问题吗?
谢谢。
您需要添加一个尾部斜杠,否则您正在做的是检查存储桶mybucket-witha3api2
中是否存在名为test
的对象。文件TestDataforAWSs3api.txt
存在,但您未使用标记为PRE
的正确前缀进行检查。要检查文件是否存在,您可以列出带有test
前缀的对象,如下所示:
aws s3 ls s3://mybucket-witha3api2/test/
或者您可以显式检查文件本身
aws s3 ls s3://mybucket-witha3api2/test/TestDataforAWSs3api.txt