AWS CLI $ PATH设置

fr_*_*ses 93 macos amazon-web-services aws-cli

我正在关注AWS CLI安装指南.我已成功在Mac OS X终端上使用以下输出成功安装该工具:

Running cmd: /usr/bin/python virtualenv.py --python /usr/bin/python /Users/fr/.local/lib/aws
Running cmd: /Users/fr/.local/lib/aws/bin/pip install --no-index --find-links file:///Users/fr/Downloads/awscli-bundle/packages awscli-1.5.3.tar.gz
You can now run: /Users/fr/.local/lib/aws/bin/aws --version
Run Code Online (Sandbox Code Playgroud)

我的问题是我必须输入完整路径/Users/fr/.local/lib/aws/bin/aws来执行任何aws命令.根据指南的最后一步,我应该能够直接执行aws命令而无需键入执行它的绝对路径.

当我尝试使用aws时,我得到以下输出:

aws --version                                                                                         ?
command not found: aws
Run Code Online (Sandbox Code Playgroud)

我按照说明确保〜/ bin在我的PATH环境中,我可以看到没有输出,因此,我执行了导出PATH =〜/ bin:$ PATH命令将〜/ bin添加到$ PATH.但这没有任何区别.在AWS命令不直接合作.

有人可以建议可能出现的问题吗?

小智 230

以下是在mac OSX上安装AWS cli的三个步骤(curl或wget)第三步将正确设置路径

$ curl "https://s3.amazonaws.com/aws-cli/awscli-bundle.zip" -o "awscli-bundle.zip"
$ unzip awscli-bundle.zip
$ sudo ./awscli-bundle/install -i /usr/local/aws -b /usr/local/bin/aws
Run Code Online (Sandbox Code Playgroud)

另一种最简单的方法是使用自制软件

brew install awscli
Run Code Online (Sandbox Code Playgroud)

如果你想要开发版,你可以做

brew install awscli --HEAD
Run Code Online (Sandbox Code Playgroud)

  • `brew install awscli`是我的选择 (58认同)
  • 这个应该是接受的答案! (2认同)
  • 请注意哪些文档说明:`macOS 的 yum、apt-get 或 Homebrew 等包管理器通常支持多个版本的 AWS CLI`,因此请务必在安装后检查版本。 (2认同)

wil*_*ire 55

这对我有用(注意:将2.7更改为您特定的Python版本):

export PATH=~/Library/Python/2.7/bin/:$PATH
Run Code Online (Sandbox Code Playgroud)

您可能希望在.bash_profile使用结束时添加此内容:

sudo nano ~/.bash_profile
Run Code Online (Sandbox Code Playgroud)


mat*_*sev 43

我使用Homebrew来安装AWS CLI,我对结果非常满意.只需输入:

$ brew install awscli
Run Code Online (Sandbox Code Playgroud)

安装brew后.

请注意,在AWS CLI安装页面上有以下免责声明:

awscli软件包可以在其他软件包管理器(如APT,yum和Homebrew)的存储库中使用,但不保证是最新版本.

也就是说,我没有发现这是一个问题,awscli.rb已经经常更新以匹配最新版本.


更新:存在GitHub问题,表明应在AWS CLI安装说明中添加Homebrew作为替代方案.此问题后来关闭,以支持此UserVoice功能请求.


Jua*_*ata 41

当您运行命令时: pip3 install awscli --upgrade --user

仔细观察aws cli工具安装的位置,你可以看到终端日志上的路径,在我的例子中,我有这样的东西:

awscli in ./Library/Python/3.6/lib/python/site-packages

现在你应该在你的.bash_profile上添加相同的路径但是在bin文件夹中(从lib路径中删除而不是把你的bin路径)这样:

export PATH=/Users/xuser/Library/Python/3.6/bin/:$PATH

  • 你的帖子对我有帮助. (3认同)
  • 这件事情让我感到很快乐 (3认同)
  • 对我来说最好的答案。仅使用brew便无济于事。知道为什么它坏了好多了!谢谢胡安 (2认同)

小智 9

这也发生在我身上,并且不想再安装brew,因为一切都运行良好.我还遵循AWS网站上的"教程",并在导出路径步骤中遇到问题.

基本上,它添加了一个不同的python文件夹作为下载awscli的文件夹.所以export PATH=~/.local/bin:$PATH 我没有使用他们建议的内容,而是使用了磁盘的完整路径: export PATH=/Users/abc/Library/Python/3.6/bin/:$PATH


小智 8

有时虽然类路径在 mac 上被搞砸了 - 你总是可以运行在本地修复 aws cli

$ brew install awscli
Run Code Online (Sandbox Code Playgroud)

这将重用和更新现有包并设置正确的类路径


Nam*_*ami 7

尝试:

PATH=/Users/fr/.local/lib/aws/bin:$PATH 
Run Code Online (Sandbox Code Playgroud)

(把它放在.profile文件中)

还尝试用自制软件安装aws cli.它会自动将其添加到您的路径中.


Pio*_*cki 5

我刚刚遇到了同样的错误,我可以通过在我的.bash_profile文件中添加以下行来解决它:

export PATH=~/Library/Python/2.7/bin/:$PATH

请检查Python的版本,因为它可能与您的系统略有不同.这样可以避免将用户名文件夹添加到.bash_profile文件中.