У меня установлен python3 в Ubuntu 20.04, и у меня есть приложение, для которого требуется установить python 2.7. После установки python 2.7 похоже, что python не может быть найден
/usr/bin/python: bad interpreter: No such file or directory
which python
, which python2
и which python3
не возвращают никаких результатов
Вот содержимое /usr/bin:
root@ip-10-10-10-201:/home/ubuntu# ls -alh /usr/bin/pyt*
lrwxrwxrwx 1 root root 9 Mar 13 2020 /usr/bin/python2 -> python2.7
-rwxr-xr-x 1 root root 3.5M Aug 4 11:16 /usr/bin/python2.7
lrwxrwxrwx 1 root root 9 Mar 13 2020 /usr/bin/python3 -> python3.8
lrwxrwxrwx 1 root root 16 Mar 13 2020 /usr/bin/python3-config -> python3.8-config
-rwxr-xr-x 1 root root 5.3M Jul 28 12:59 /usr/bin/python3.8
lrwxrwxrwx 1 root root 33 Jul 28 12:59 /usr/bin/python3.8-config -> x86_64-linux-gnu-python3.8-config
Я не уверен, как заставить это работать, если мне нужно, чтобы оба питона (2.7 и 3.8) работали. Должен ли я изменить #!/usr/bin/python
в сценариях, требующих phyton2, на #!/usr/bin/python2
?
Будем признательны за вашу помощь. Счастливых праздников!
source ~/.bash_profile
- person ti7   schedule 22.12.2020/usr/bin/python
в этом выводе отls
? Чтобы использовать правильный интерпретатор, вы должны указать путь к существующему исполняемому файлу. Таким образом, вы можете использовать/usr/bin/python2
или/usr/bin/python2.7
. Шебанг обычно выглядит как#!/usr/bin/env python
. - person ForceBru   schedule 22.12.2020python
, вы должны явно выбрать междуpython-is-python2
илиpython-is-python3
. - person chepner   schedule 22.12.2020/usr/bin/python
на/usr/bin/python2
кажется работает - person igalsc   schedule 22.12.2020/usr/bin/python
с одним или другим, это не означает, что это правильно для любого произвольного скрипта, который указывает/usr/bin/python
. Вероятно, лучше обновить скрипт, чтобы он был явно. - person chepner   schedule 22.12.2020