Я создал символическую ссылку (вчера) так:
sudo ln -s bin/python /usr/bin/prj-python
Когда я бегу:
prj-python file.py
Я получил:
prj-python: command not found
Когда я снова пытаюсь создать ссылку, я получаю:
ln: создание символической ссылки `/ usr / bin / prj-python ': файл существует
Почему это происходит? Мой $PATH
это:
/ USR / местные / SBIN: / USR / местные / бен: / USR / SBIN: / USR / бен: / SBIN: / бен: / USR / игры: / OPT / реальный / RealPlayer
pwd
это/home/xralf/my_virtual_env
и есть подкаталогbin
сpython
командой$PWD/
раньшеbin
.Вещи, чтобы проверить:
ls -l /usr/bin/prj-python
Если это так:
lrwxrwxrwx (...) /usr/bin/prj-python -> bin/python
файл будет фактически найден в / usr / bin / bin / python (это то, что xralf пытался сказать). Fix:
rm /usr/bin/prj-python
ln -s /full/path/to/your/python /usr/bin/python-prj
bin/python
скрипт является оболочкой (он же. Wrapper-script), проверьте строку #! - (иногда ее называют shebang -line) в первой строке. Если есть опечатка , как ,#!/bin/bush
что вызовет не нашел сообщение об ошибке также.источник
ln -s $PWD/python /usr/bin/python-prj
.$PWD
используется для получения полного пути.