Python - установить скрипт в систему

Как я могу сделать файл setup.py для моего собственного скрипта? Я должен сделать свой сценарий глобальным. (добавьте его в /usr/bin), чтобы я мог запустить его из консоли, просто наберите: scriptName arguments. ОС: Linux.РЕДАКТИРОВАТЬ: Теперь мой сценарий можно установить, но как я могу сделать его глобальным? Чтобы я мог запустить его из консоли, просто набрав имя.

2 ответа

Решение

РЕДАКТИРОВАТЬ: Этот ответ касается только установки исполняемых скриптов в /usr/bin, Я полагаю, у вас есть базовые знания о том, как setup.py файлы работают.

Создайте свой скрипт и поместите его в свой проект следующим образом:

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

В основном это все. Есть вероятность, что ваш сценарий попадет не совсем в /usr/bin, но в каком-то другом каталоге. Если это так, введите

python setup.py install --help

и искать --install-scripts параметр и друзья.

Я знаю, что этот вопрос довольно старый, но на всякий случай я выкладываю, как я решил проблему для себя, которая хотела установить пакет для PyPI, который при установке его с pip, установить его как системный пакет, а не только для Python.

setup(
    # rest of setup
    console_scripts={
        'console_scripts': [
            '<app> = <package>.<app>:main'
        ]
    },
)

подробности

Другие вопросы по тегам