Python3 和 aws-cli 版本不同
Python3 and aws-cli version differ
我按照 aws 文档安装了 aws-cli
$ curl "https://awscli.amazonaws.com/AWSCLIV2.pkg" -o "AWSCLIV2.pkg"
$ sudo installer -pkg AWSCLIV2.pkg -target /
当我验证它们的存在时,我得到 不同的 Python 个版本。
$ python3 --version
Python 3.9.6
$ aws --version
aws-cli/2.2.26 Python/3.8.8 Darwin/20.6.0 exe/x86_64 prompt/off
这是预期的吗?
是的,这是预期的。 CLI 不使用您的 OS 的 python,一个被捆绑到 .pkg 文件以及所有其他依赖项中。这简化了安装、测试和开发。您可以随心所欲地摆弄 OS 的 python,而不会破坏 CLI。
代码的核心在这里:
https://github.com/aws/aws-cli/blob/v2/scripts/make-bundle
当您使用 sudo
安装软件包时,您并不是指特定于您的用户设置的内容,python 版本就是这些设置之一。
Python3.8.8为系统安装版本(System Installed
Python 3.9.6 特定于您的用户设置,您可能正在使用 pipenv
或任何其他为您设置 python 版本的设置。
因此存在差异。
$›› sudo python --version
Password:
Python 2.7.16
$›› python --version
Python 2.7.16
我按照 aws 文档安装了 aws-cli
$ curl "https://awscli.amazonaws.com/AWSCLIV2.pkg" -o "AWSCLIV2.pkg"
$ sudo installer -pkg AWSCLIV2.pkg -target /
当我验证它们的存在时,我得到 不同的 Python 个版本。
$ python3 --version
Python 3.9.6
$ aws --version
aws-cli/2.2.26 Python/3.8.8 Darwin/20.6.0 exe/x86_64 prompt/off
这是预期的吗?
是的,这是预期的。 CLI 不使用您的 OS 的 python,一个被捆绑到 .pkg 文件以及所有其他依赖项中。这简化了安装、测试和开发。您可以随心所欲地摆弄 OS 的 python,而不会破坏 CLI。
代码的核心在这里: https://github.com/aws/aws-cli/blob/v2/scripts/make-bundle
当您使用 sudo
安装软件包时,您并不是指特定于您的用户设置的内容,python 版本就是这些设置之一。
Python3.8.8为系统安装版本(System Installed
Python 3.9.6 特定于您的用户设置,您可能正在使用 pipenv
或任何其他为您设置 python 版本的设置。
因此存在差异。
$›› sudo python --version
Password:
Python 2.7.16
$›› python --version
Python 2.7.16