我关注AWS CLI Setup guide。我已经设法在我的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
我的问题是我必须输入完整路径 /Users/fr/.local/lib/aws/bin/aws 才能执行任何 aws 命令。根据指南的最后一步,我应该能够直接执行aws命令而无需键入执行它的绝对路径。
当我尝试使用 aws 时,我得到以下输出:
aws --version ⏎
command not found: aws
我按照说明确保〜/ bin 在我的 PATH 环境中,我可以看到没有输出,因此,我执行了导出 PATH =〜/ bin:$ PATH 命令将〜/ bin添加到$ PATH 。但这没有任何区别。 aws 命令无法直接使用。
有人可以告知可能出现的问题吗?
答案 0 :(得分:210)
以下是在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
另一种最简单的方法是使用自制软件
brew install awscli
如果您想要开发版本,可以
brew install awscli --HEAD
答案 1 :(得分:53)
这对我有用(注意:将2.7更改为您特定的Python版本):
export PATH=~/Library/Python/2.7/bin/:$PATH
您可能希望使用以下内容将其添加到.bash_profile
的末尾:
sudo nano ~/.bash_profile
答案 2 :(得分:35)
我已使用Homebrew安装AWS CLI,我对结果非常满意。只需输入:
$ brew install awscli
安装brew后。
注意,在AWS CLI installation page上有以下免责声明:
awscli软件包可以在其他软件包管理器(如APT,yum和Homebrew)的存储库中使用,但不保证是最新版本。
尽管如此,我还没有发现这是一个问题,awscli.rb已经经常更新以匹配最新版本。
更新:有GitHub issue表示应在AWS CLI安装说明中添加Homebrew作为替代方案。此问题后来被关闭,支持此UserVoice feature request。
答案 3 :(得分:30)
运行命令时:
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
答案 4 :(得分:9)
这也发生在我身上,并且不想再安装brew了,因为一切都运行良好。我也遵循了教程'在AWS站点上并且在导出路径步骤中出现问题。
基本上,它添加了一个不同的python文件夹,其中下载了awscli。所以而不是export PATH=~/.local/bin:$PATH
他们建议我使用磁盘的完整路径:
export PATH=/Users/abc/Library/Python/3.6/bin/:$PATH
答案 5 :(得分:7)
尝试:
PATH=/Users/fr/.local/lib/aws/bin:$PATH
(把它放在.profile文件中)
还尝试用自制软件安装aws cli。它会自动将其添加到您的路径中。
答案 6 :(得分:5)
我遇到了同样的错误,我可以通过在.bash_profile
文件中添加以下内容来解决问题:
<强> export PATH=~/Library/Python/2.7/bin/:$PATH
强>
请检查Python的版本,因为它可能与您的系统略有不同。这样可以避免将您的用户名文件夹添加到.bash_profile
文件中。
答案 7 :(得分:2)
如果您的系统上有Anaconda版本的python,请使用 conda 安装awscli:
conda install -c conda-forge awscli
答案 8 :(得分:1)
我个人对aws CodeBuild也有同样的问题-我无法使用aws cli。我通过在docker映像上全局安装aws解决了此问题(而不是在本地安装给用户)。
RUN pip install awscli --upgrade
(instead of RUN pip install awscli --upgrade --user)
它对我有用,如果可以帮助任何人!
答案 9 :(得分:1)
有时在Mac上会混淆classpath的情况-您始终可以在本地运行以修复AWS CLI
$ brew install awscli
这将重新使用和更新现有软件包并设置正确的类路径
答案 10 :(得分:0)
我最终和Piotr一样,了解如何在没有第三方软件的情况下更新路径是很好的。然而,随着第三方软件的推出,Homebrew非常棒,使用它来保持您的依赖符号链接在一个地方是一件好事。事实上的pkg mgr在mac上。
答案 11 :(得分:0)
这似乎是位于以下位置的虚拟环境方法: https://docs.aws.amazon.com/cli/latest/userguide/awscli-install-virtualenv.html
不激活virtualenv:
已记录示例中的source ~/cli-ve/bin/activate
。
答案 12 :(得分:0)
看看https://docs.aws.amazon.com/cli/latest/userguide/install-bundle.html上的注释
默认情况下,安装脚本在系统默认版本的Python下运行。如果您已经安装了Python的替代版本,并希望使用该版本来安装AWS CLI,请通过Python可执行文件的绝对路径来运行具有该版本的安装脚本。
有关运行安装可执行文件的步骤
不只是做:
$ sudo ./awscli-bundle/install -i /usr/local/aws -b /usr/local/bin/aws
例如,找到您的python安装位置
$ which python
,然后使用路径安装可执行文件,如
$ sudo <path from executing which python> awscli-bundle/install -i /usr/local/aws -b /usr/local/bin/aws
以上内容可以解决问题。
答案 13 :(得分:0)
确保python全局安装,步骤如下:
在AWS端:
转到亚马逊AWS中心->服务->身份和访问管理(IAM)->用户->查找您的用户并单击它->选择安全性 凭据标签->创建访问密钥
安装:在命令行/ bash上
SELECT table1. I'd
,table1.[Date Of Offence]
,table. [Offence Category]
,table1.[Offence Description]
,table1.[Action Taken]
FROM table1
WHERE table1.[Date Of Offence] Between DateSerial(Year(Date()), Month(Date())-1, 1) And DateSerial(Year(Date()), Month(Date()), 0)
AND table1.[Offence Category] = "Speeding"
OR table1.[Date Of Offence] Between DateSerial(Year(Date()), Month(Date())-1, 1) And DateSerial(Year(Date()), Month(Date()), 0)
AND (table1.[Offence Category] = "Speeding" IS NULL
UNION ALL
SELECT table1.ID
,table1[Date Of Offence 2]
,table1.[Offence Category 2]
,table1.[Offence Description 2]
,table1.[Action Taken 2]
FROM table1
WHERE table1.[Date Of Offence]) Between DateSerial(Year(Date()), Month(Date())-1, 1) And DateSerial(Year(Date()), Month(Date()), 0)
AND table1.[Offence Category] = "Speeding"
OR table1.[Date Of Offence] Between DateSerial(Year(Date()), Month(Date())-1, 1) And DateSerial(Year(Date()),Month(Date()),0))
AND table1.[Offence Category]) = "Speeding" IS NULL
UNION
Into the 3rd query
可选:如果尚未找到aws版本,请在bash个人资料上设置aws路径。
curl -O https://bootstrap.pypa.io/get-pip.py
python3 get-pip.py --user
pip3 install awscli --upgrade --user
aws --version
配置 :(最后一步)按以下步骤配置您的凭据
vim ~/.bash_profile
#paste this line
PATH=$PATH:/usr/local/bin/aws
填写从aws网站获得的属性并连接您的帐户。附上该步骤的示例。
AWS访问密钥ID [无]:abcd
AWS秘密访问密钥[无]:zyx123!@#
默认区域>名称[无]:us-east-1
默认输出格式[无]:json
祝你好运!