当前位置:  开发笔记 > 编程语言 > 正文

awscli在安装后未添加到路径中

如何解决《awscli在安装后未添加到路径中》经验,为你挑选了6个好方法。

我根据亚马逊的官方指示安装了aws cli.

sudo pip install awscli

然而,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上运行此命令.可能有什么不对?

谢谢!



1> Bruno Bronos..:
改善OP的答案

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

请注意,他们在发散libbin.并且考虑到OP声明," 没有名为aws的可执行文件. "这将我们带到我们的第一个学习课程:

可执行文件往往不在lib文件夹中.

查找bin共享共同谱系的文件夹.

在这种情况下,我建议bin通过以下方式查找文件夹:

find /Library/Frameworks/Python.framework -type d -name bin

但是,如果你打算这样做,你也可以通过以下方式搜索你的可执行文件:

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

可是等等

OP是如何知道他们的/Library/Frameworks/Python.framework/Versions/3.3/lib/python3.3/site-packages/

最简单的答案也是我们的下一个学习课程:

问你的python安装的东西.

我是这样做的:

$ python -c 'import awscli; print(awscli)'


$ python3 -c 'import awscli; print(awscli)'

我有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

如您所见,我有2个bin文件夹和2个aws可执行文件.我可能想要使用Python3.6版本.但是,如果我正在为使用Python2.7版本的远程系统进行本地试验和错误工作,我将要使用它.这正是我安装了2个版本的原因.


我在Stack Overflow上找到的最佳答案之一.谢谢!
@VishalDesai您的感受是为什么我在/sf/ask/17360801/中添加第4步之类的内容是的,当您需要快速解决方案时,很难通过这样的列表.但是,那些仅适用于与作者完全匹配的系统.我写了这样的答案之后我尝试了每一个我能找到的答案而且没有任何效果.这些答案在我的DevOps团队手册中得到了链接,因为我们有很多非标准系统需要支持.我写的答案适用于所有****.希望这适用于**更多的人**.对不起,它不适合你.去睡一会.
对昨天的评论表示歉意.第二条评论实际上对我有用.我得到了一些睡眠,恢复了活力,之后不久就解决了这个问题.
@BrunoBronosky感谢你的回答,当有人花费宝贵的时间为共同利益详细解释事情时,它对人类说得很好.

2> 小智..:

这对我在mac上工作:

sudo -H pip install awscli --upgrade --ignore-installed six


谁能解释这是如何工作的?它没有任何问题
仅回答有效!文档。

3> Bruno Bronos..:

来自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

所以基于此我将这一行添加到我的 .bashrc

export PATH=$HOME/Library/Python/3.6/bin:$PATH



4> vlz..:

在ubuntu上并使用不带sudo的pip3进行安装,要添加到我的路径的正确位置是~/.local/bin

export PATH=$HOME/.local/bin:$PATH



5> Max..:

解决方案是添加

/Library/Frameworks/Python.framework/Versions/3.3/bin

到我的路径.


这是一个非常“自私”的答案选择。它实际上对社区没有任何帮助。

6> wltheng..:

可以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:

推荐阅读
低调pasta_730
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有