Python / usr / bin / env: плохой интерпретатор: не каталог

Я сделал ошибку. Я установил Python 3, а затем выполнил следующую команду, чтобы иметь версию Python по умолчанию как Python3

sudo ln -fs /opt/Python-3.4.1/python /usr/bin/python

Но я хотел вернуться к python2.7 и сделал

sudo ln -fs /usr/bin/python2.7/python /usr/bin/python

Теперь, когда я хочу запустить сценарий bash с питоном внутри, у меня возникает следующая ошибка:

/ usr / bin / env: плохой интерпретатор: не каталог

Когда я запускаю эту команду:

ls -l /usr/bin/env

У меня красный результат:

lrwxrwxrwx 1 root root 25 июня 12 13:37 / usr / bin / env -> /usr/bin/python2.7/python

Действительно, когда я захожу в этот каталог, у меня больше нет исполняемого файла env, а есть неработающая ссылка.

Я не нашел решения в Интернете.

Не могли бы вы помочь мне ? Я начинаю сожалеть о своей ошибке.

Спасибо


person lilouch    schedule 12.06.2015    source источник
comment
По теме: stackoverflow.com/questions/2429511/ Не связывайте env с фактической python версией, эта программа имеет специальное назначение (см. связанный Q)   -  person myaut    schedule 12.06.2015
comment
Да, это была ошибка. Я видел этот пост, но как его исправить?   -  person lilouch    schedule 12.06.2015
comment
Возиться с /usr/bin категорически запрещено практически на любой современной платформе.   -  person tripleee    schedule 08.09.2019


Ответы (1)


Хорошо, я решил свою проблему, переустановив этот файл env.

sudo apt-get install --reinstall coreutils

Тогда благодаря этому сообщению в Почему люди пишут #! / Usr / bin / env python shebang в первой строке скрипта Python? Я лучше знаю, как переключаться между версиями, и больше не совершаю той же ошибки.

person lilouch    schedule 12.06.2015