27

I created a symbolic link (yesterday) like this:

sudo ln -s bin/python /usr/bin/prj-python

When I run:

prj-python file.py

I get:

prj-python: command not found

When I try creating the link again, I get:

ln: creating symbolic link `/usr/bin/prj-python': File exists

Why is that happening? My $PATH is:

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/opt/real/RealPlayer

23

You forgot the initial slash before bin/python. This means /usr/bin/prj-python now points to /usr/bin/bin/python. What would you like it to point to exactly?

| improve this answer | |
  • There is not initial slash. the pwd is /home/xralf/my_virtual_env and it has subdirectory bin with python command – xralf Oct 16 '11 at 18:44
  • 10
    Than, you've forgot $PWD/ before bin. – rvs Oct 16 '11 at 20:38
  • Thank you, this helped. I used this command as it was in the book. – xralf Oct 17 '11 at 9:50
27

Things to check:

  • Perform an ls -l /usr/bin/prj-python

If it's like:

lrwxrwxrwx (...) /usr/bin/prj-python -> bin/python

The file will actually be searched at /usr/bin/bin/python (that's what xralf tried to say). Fix:

rm /usr/bin/prj-python
ln -s /full/path/to/your/python /usr/bin/python-prj

  • If your bin/python is a shell script (aka. wrapper-script) check the #!-line (sometimes called shebang-line) at the first line. If there's a typo like #!/bin/bush that will cause a not found error message also.
| improve this answer | |
  • thank you, your answer is even more careful and educational. Sorry I already accepted. – xralf Oct 17 '11 at 9:52
  • this helped a lot...most of the answers if found were about $PATH – Ja8zyjits Jan 16 '16 at 16:15
  • I use an ln without a parameter . People should use ln -s indeed, thus creating a symbolic link. – Cedric Sep 14 '17 at 8:43
  • 1
    Helped, and I used ln -s $PWD/python /usr/bin/python-prj. $PWD is used for getting full path. – Manwal Jan 10 '19 at 7:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.