Max*_*Max 70 python macos pip amazon-web-services
我根据亚马逊的官方指示安装了aws cli.
sudo pip install awscli
Run Code Online (Sandbox Code Playgroud)
然而,aws在我的道路上无处可寻.安装似乎很成功.有许多文件位于/Library/Frameworks/Python.framework/Versions/3.3/lib/python3.3/site-packages/awscli,但没有名称的可执行文件aws.我的python版本是3.3.4,我的pip版本是1.5.4,并在OS X 10.9上运行此命令.可能有什么不对?
谢谢!
Bru*_*sky 103
OP回答了他们自己的答案,但可执行文件的确切位置更可能与它相同.所以,让我们分解为什么他的解决方案有效,这样你就可以将它应用到自己身上.
有许多文件位于
/Library/Frameworks/Python.framework/Versions/3.3/lib/python3.3/site-packages/awscli,但没有名为aws的可执行文件.
解决方案是添加
/Library/Frameworks/Python.framework/Versions/3.3/bin到我的PATH.
比较这些路径以找到它们的共性:
/Library/Frameworks/Python.framework/Versions/3.3/lib/python3.3/site-packages/awscli
/Library/Frameworks/Python.framework/Versions/3.3/bin
Run Code Online (Sandbox Code Playgroud)
请注意,他们在发散lib对bin.并且考虑到OP声明," 没有名为aws的可执行文件. "这将我们带到我们的第一个学习课程:
lib文件夹中.bin共享共同谱系的文件夹.在这种情况下,我建议bin通过以下方式查找文件夹:
find /Library/Frameworks/Python.framework -type d -name bin
Run Code Online (Sandbox Code Playgroud)
但是,如果你打算这样做,你也可以通过以下方式搜索你的可执行文件:
find /Library/Frameworks/Python.framework -type f -perm -100 -name aws
# the `-` in `perm -100` means not an exact match of 100
# but any octal that includes 100
Run Code Online (Sandbox Code Playgroud)
OP是如何知道他们的/Library/Frameworks/Python.framework/Versions/3.3/lib/python3.3/site-packages/?
最简单的答案也是我们的下一个学习课程:
我是这样做的:
$ python -c 'import awscli; print(awscli)'
<module 'awscli' from '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/awscli/__init__.pyc'>
$ python3 -c 'import awscli; print(awscli)'
<module 'awscli' from '/System/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/awscli/__init__.py'>
Run Code Online (Sandbox Code Playgroud)
我有2个蟒蛇,他们都没有使用与OP相同的路径甚至路径模式.
$ find /System/Library/Frameworks/Python.framework -type d -name bin
/System/Library/Frameworks/Python.framework/Versions/2.7/bin
/System/Library/Frameworks/Python.framework/Versions/3.6/bin
$ find /System/Library/Frameworks/Python.framework -type f -perm -100 -name aws
/System/Library/Frameworks/Python.framework/Versions/2.7/bin/aws
/System/Library/Frameworks/Python.framework/Versions/3.6/bin/aws
Run Code Online (Sandbox Code Playgroud)
如您所见,我有2个bin文件夹和2个aws可执行文件.我可能想要使用Python3.6版本.但是,如果我正在为使用Python2.7版本的远程系统进行本地试验和错误工作,我将要使用它.这正是我安装了2个版本的原因.
小智 63
这对我在mac上工作:
sudo -H pip install awscli --upgrade --ignore-installed six
Run Code Online (Sandbox Code Playgroud)
Bru*_*sky 39
来自http://docs.aws.amazon.com/cli/latest/userguide/cli-install-macos.html#awscli-install-osx-path
对于Modern macos/OSX,您需要找到您的~/Library/Python/$version/bin目录并将其添加到您的目录中$PATH.这将帮助您找到aws已安装的那个.
$ ls -d ~/Library/Python/*/bin/aws
/Users/bbronosky/Library/Python/3.6/bin/aws
Run Code Online (Sandbox Code Playgroud)
所以基于此我将这一行添加到我的 .bashrc
export PATH=$HOME/Library/Python/3.6/bin:$PATH
Run Code Online (Sandbox Code Playgroud)
vlz*_*vlz 15
在ubuntu上并使用不带sudo的pip3进行安装,要添加到我的路径的正确位置是~/.local/bin:
export PATH=$HOME/.local/bin:$PATH
Run Code Online (Sandbox Code Playgroud)
Max*_*Max 10
解决方案是添加
/Library/Frameworks/Python.framework/Versions/3.3/bin
Run Code Online (Sandbox Code Playgroud)
到我的路径.
可以pip show awscli用来查找安装位置。
$ pip show awscli
Name: awscli
Version: 1.16.94
Summary: Universal Command Line Environment for AWS.
Home-page: http://aws.amazon.com/cli/
Author: Amazon Web Services
Author-email: UNKNOWN
License: Apache License 2.0
Location: /root/.local/lib/python2.7/site-packages
Requires: s3transfer, colorama, rsa, docutils, botocore, PyYAML
Required-by:
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
42803 次 |
| 最近记录: |