I installed the aws cli according to the offical Amazon directions.
sudo pip install awscli
However, aws
is nowhere to be found in my path. The installation seems to have been successful. There are a number of files located at /Library/Frameworks/Python.framework/Versions/3.3/lib/python3.3/site-packages/awscli
, however there are no executables named aws
. My python version is 3.3.4, my pip version is 1.5.4, and running this command on OS X 10.9. What could be wrong?
Thanks!
I upgraded from OSX 10.7 to OSX 10.9 and afterwards, my installation of aws no longer worked.
I observed errors like this:
The solution that the operating system upgrade had changed permissions.
Giveaway clue:
sudo pip <--- worked
pip <--- failed
So I did this:
and then afterwards, I'm able to use the aws commands again.
Not sure if this is something that will be helpful for others, but figured I'd throw it into the mix.
Improving the OP's Answer
The OP answered their own question, but the exact location of the executable is more likely to be different than it is to be the same. So, let's break down WHY his solution worked so you can apply it to yourself.
From the problem
From the solution
Let's learn something
Compare those paths to find their commonality:
Notice that they diverge at
lib
vs.bin
. And consider that the OP stated, "there are no executables named aws." That brings us to our first learning lessons:lib
folders.bin
folders that share a common lineage.In this case I would have suggested looking for
bin
folders via:But, if you are going to do that, you might as well just search for your executable via:
But wait
How did OP know to look in their
/Library/Frameworks/Python.framework/Versions/3.3/lib/python3.3/site-packages/
?The easiest answer is also our next learning lesson:
Here is how I do that:
I have 2 Pythons and neither of them use the same paths or even path patterns as the OP.
Apply what we've learned
As you can see, I have 2
bin
folders and 2aws
executables. I probably want to use the Python3.6 version. However, if I'm doing local trial and error work for a remote system that uses the Python2.7 version, I'm going to want to use that. And this is exactly why I have 2 version installed.Windows is likely the minority here, but adding below to my PATH worked for me. For reference, I installed the CLI via pip:
When installing in a virtualenv: 'pip install awscli' (without sudo) worked fine on OS X; but not on CentOS release 6.6, e.g. 'which aws' found nothing. The solution:
This worked for me on mac:
The solution was to add
to the my PATH.