Я хочу написать приложение Ubuntu, которое поможет мне разобраться с веб-интерфейсом API. Я могу написать это на Python, но я хочу знать, как построить его так, чтобы я мог выполнить его как команду на самом терминале.
Поместите вашу программу на Python в текстовый файл. Первая строка этого файла должна быть
#!/usr/bin/python
print "Hello world"
(я поместил строку «Hello world» просто в качестве примера кода Python). Сохраните его как текстовый файл, например test.py
. Сделайте этот файл исполняемым
chmod a+x test.py
Presto, теперь вы можете запустить его:
./test.py
Чтобы иметь к нему доступ из любого каталога и для каждого пользователя, поместите его в /usr/local/bin
, который является местоположением по умолчанию для исполняемых файлов, не установленных с менеджерами пакетов:
sudo cp test.py /usr/local/bin
В качестве альтернативы, вы можете создать каталог с именем «bin» в вашем домашнем каталоге; он будет автоматически добавлен к вашей переменной PATH через файл $ HOME / .profile.
mkdir $HOME/bin
mv test.py $HOME/bin
В обоих из этих двух последних случаев для запуска вашего скрипта в терминале вам нужно только написать:
test.py
Расширение «.py» здесь только для того, чтобы вы указали, что это скрипт Python. Вы можете назвать его «Сьюзен» и запустить его, набрав
susan
Он будет работать так же.
Так как он прекрасно работает, помещая небольшой скрипт на Python в /usr/local/bin
, чтобы иметь возможность запускать его из командной строки (см. этот ответ ), у нас может быть более сложное приложение на Python, которое нам нужно хранить в другом месте (например, в /opt/myapp/
).
Затем мы можем написать небольшой скрипт, который мы поместили в /usr/local/bin/
, который ссылается на наш скрипт на Python, например,
#! /bin/bash
python /opt/myapp/myapp.py "$@"
Добавьте переменную "$@"
, если ваш сценарий принимает параметры командной строки.
Python - это язык сценариев, что означает, что вам не нужно его компилировать перед запуском. Все, что вам нужно, это установить требуемую версию интерпретатора Python.
Например, у вас есть скрипт python с именем foo.py в вашем домашнем каталоге, вы можете запустить этот скрипт с помощью команды
$ ~/foo.py
В первой строке файла должно быть указано, что это файл python. Первая строка должна выглядеть следующим образом:
#!/usr/bin/env python
Предполагая, что он установлен как исполняемый, если нет:
$ chmod +x ~/foo.py
Если вы хотите запустить его без каких-либо ~/
вещей, вам следует переместите его в свой $ PATH.
$ echo $PATH
/usr/local/bin:/usr/bin:/bin
Если вы переместите foo.py в /usr/local/bin
, /usr/bin
или /bin
, вы сможете запустить без родительской папки.
$ sudo mv ~/foo.py /usr/local/bin
$ foo.py