Как мне изменить, где Bash ищет Python в Linux? - PullRequest
5 голосов
/ 05 апреля 2011

Я только что обновил свой ReadyNas с python 2.3.5 до python 2.6.6. Обновление поместило новую версию в каталог /usr/local/bin. Так

  • /usr/local/bin/python - это Python 2.6.6
  • /usr/bin/python - это Python 2.3.5

Когда я набираю python в приглашении bash, пытается запустить /usr/bin/python или мою старую версию. Я переместил свою старую версию, и теперь я получаю:

bash: /usr/bin/python: No such file or directory

Как мне изменить, где bash ищет python? Как bash в настоящее время решает, что когда я набираю python, он ищет только в /usr/bin для python?

Ответы [ 2 ]

15 голосов
/ 05 апреля 2011

Ваша PATH переменная окружения. У него есть список каталогов, в которых bash выполняет поиск (в том же порядке), когда ищет программу для выполнения. По сути, вы хотите поместить /usr/local/bin в начало переменной окружения PATH. Добавьте следующее в ваш ~/.bashrc файл:

export PATH=/usr/local/bin:$PATH

Вы можете посмотреть текущую настройку, запустив команду set в bash.

Кроме того, вы можете просто переименовать /usr/bin/python в /usr/bin/python2.3 и создать символическую ссылку, указывающую на новую версию, например,

ln -s /usr/local/bin/python /usr/bin/python
0 голосов
/ 05 апреля 2011

Я не думаю, что BASH несет ответственность за выбор версии по умолчанию для интерпретатора Python.

Если вы являетесь администратором, самый простой способ сделать это - использовать символическую ссылку в /usr/bin/pythonуказывая на соответствующую версию.Старайтесь не заменять реальные двоичные файлы, если это возможно.

Если нет, то добавьте папку bin, к которой у вас есть доступ, и добавьте ее к переменной окружения $PATH.Затем создайте символическую ссылку на нужную версию интерпретатора Python.

Приветствия!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...