我尝试解码 %XX,但没有成功。
我也尝试过aws s3 cp s3://xxxxxxxxxx/xxxx-xxxx-xxxx-xxxx/xxxxxxxx... - --recursive
但是Streaming currently is only compatible with non-recursive cp commands
- 我需要从 S3 传输多个文件。
使用wget
我得到了相同的 403。
URL 来自s3_client.generate_presigned_url
。
答案1
使用单引号确保任何可能的特殊字符都按字面意思理解。
[user@localhost ~]# curl 'https://xxxxxxxxxx.s3.amazonaws.com/xxxx-xxxx-xxxx-xxxx/xxxxxxxxxxxxx/x?AWSAccessKeyId=AKIAIFKEBR4CLVTDYSLA&Signature=Kv%2B859dJ2eUmLgHdkT%2F9nUJEeRM%3D&Expires=1922517562'
关键是单引号。
答案2
啊哈,我发现/
当 url 在“双引号”中时,curl 可以下载未加引号的 url(而不是 %2F)。