Я не могу понять, как сделать setup.py добавить скрипт пользователю /bin или /usr/bin или что-то еще.
Например, я хотел бы добавить myscript.py в /usr/bin, чтобы пользователь мог вызвать myscript.py из любого каталога.
Я не могу понять, как сделать setup.py добавить скрипт пользователю /bin или /usr/bin или что-то еще.
Например, я хотел бы добавить myscript.py в /usr/bin, чтобы пользователь мог вызвать myscript.py из любого каталога.
Документация Python объясняет это в разделе установки скриптов.
Сценарии - это файлы, содержащие исходный код Python, предназначенный для запуска из командной строки.
Рассмотрим использование console_scripts:
from setuptools import setup
setup(name='some-name',
...
entry_points = {
'console_scripts': [
'command-name = package.module:main_func_name',
],
},
)
Где main_func_name - основная функция вашего основного модуля.
command-name - имя, под которым оно будет сохранено в/usr/local/bin/(обычно)
Если вы хотите создать и установить весь пакет python, вот как я это сделаю:
setup(name='myproject',author='',author_email='',scripts=['bin/myscript.py'])
mkdir binbin (и убедитесь, что он выполним!)cd в каталог, содержащий setup.py, и установите весь пакет python, набрав python setup.py installСуществует два способа получить рабочий инструмент командной строки из setuptools и инфраструктуры PyPI: