Попробуйте это:
echo '#!/usr/bin/env python' > myscript
cat myscript.py >>myscript
chmod +x myscript
./myscript
Конечно, вам придется изменить код, чтобы убить процесс с именем "myscript"
В системах UNIX исполняемый файл в начале содержит несколько байтов, которые сообщают ОС, какой двоичный формат используется. Если первые два байта равны #!
, то ОС предполагает, что это фактически текстовый файл, который может быть выполнен другой программой, и ОС загружает другую программу и передает ей текстовый файл.
В этом случае я, вероятно, мог бы написать #!/usr/bin/python
в верхней строке, но если ваш питон находится в /usr/local/bin
, то он не будет работать. Вместо этого я использую env
, чтобы заставить его искать ваш обычный путь для Python. Все системы UNIX имеют env в / usr / bin. Для получения дополнительной информации вы можете ввести man env
.