aws cli 返回 python 对象而不是常规输出

Ivá*_*ván 4 amazon-web-services

我刚刚按照官方安装指南在 Ubuntu 上安装了 aws cliazure VM 上的

当我从命令行运行任何命令时,结果是 python 对象,而不是文本或常规输出

$ aws s3 ls

<botocore.awsrequest.AWSRequest object at 0x7f412f3573a0>
Run Code Online (Sandbox Code Playgroud)

我到处搜索但找不到任何提示。我已经重新安装了 aws 并尝试使用output标志,但没有任何变化。

有什么建议么?

小智 5

这也花了我一段时间才弄清楚。由于某种原因,这仅影响我们的 CICD 作业,但在本地使用相同的容器映像和环境变量可以正常工作。

事实证明,问题源于未提供区域。

您可以通过在命令中显式指定区域来解决此问题:

aws s3 ls --region us-west-2
Run Code Online (Sandbox Code Playgroud)

或者通过为该区域提供可用的 AWS 环境变量:

export AWS_REGION="us-west-2"
# or
export AWS_DEFAULT_REGION="us-west-2"
Run Code Online (Sandbox Code Playgroud)

一些帮助我解决这个问题的相关资料来源: