как я могу сделать файл setup.py для своего собственного script? Я должен сделать свой script глобальный. (добавьте его в /usr/bin ), чтобы я мог запустить его из консоли, просто введите аргументы scriptName. ОС: Linux. EDIT: Теперь мой script доступен для установки, но как я могу сделать его глобальным? Так что я могу запустить его из консоли, просто набрав имя.
Python - установить script в систему
Ответ 1
EDIT: этот ответ касается только установки исполняемых скриптов в /usr/bin
. Я предполагаю, что у вас есть базовые знания о том, как работают файлы setup.py
.
Создайте свой script и поместите его в свой проект следующим образом:
yourprojectdir/
setup.py
scripts/
myscript.sh
В вашем файле setup.py
сделайте следующее:
from setuptools import setup
# you may need setuptools instead of distutils
setup(
# basic stuff here
scripts = [
'scripts/myscript.sh'
]
)
Затем введите
python setup.py install
В принципе, это. Там вероятность того, что ваш script будет находиться не точно в /usr/bin
, но в другом каталоге. Если это так, введите
python setup.py install --help
и найдите параметр --install-scripts
и друзей.
Ответ 2
Я знаю, что этот вопрос довольно старый, но на всякий случай я публикую, как я решил проблему для себя, которая хотела установить пакет для PyPI, который при установке с pip
установил бы его как системный пакет, а не только для Python.
setup(
# rest of setup
console_scripts={
'console_scripts': [
'<app> = <package>.<app>:main'
]
},
)