Как я могу передать параметры сценарию python при его запуске с помощью сценария bash? [закрыто]

я пытаюсь создать приложение, которое будет работать из командной строки. Например приложение -h . Поэтому я помещаю сценарий bash в свой / usr / local / bin / , который выполняет cd / path / to / application Затем в следующей строке ./ Main.py . Но если я выполню команду, она не получит -h . Однако, если я сделаю псевдоним в моем .bashrc с теми же командами, он будет работать нормально. Как мне изменить сценарий bash для работы с параметрами? И почему псевдоним работает, а скрипт не работает?

1
задан 20 May 2017 в 07:11

1 ответ

Поскольку сценарий оболочки не имеет никакого способа знать, что Вы хотите передать аргументы своему сценарию Python. Используйте

./Main.py "$@"

, Также не используют cd. Это избыточно. Просто используйте полный путь для./Main.py или еще лучше постарайтесь не иметь сценарий обертки в целом, если не необходимо. Просто помещенный./Main.py в один из каталогов, которые являются частью Вашей переменной $PATH и называют Ваш сценарий Python непосредственно.

основной момент - то, что то, что Вы пытаетесь сделать, является, вероятно, неправильным и ненужным, и существуют лучшие способы сделать это

5
ответ дан 3 December 2019 в 06:38

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

Похожие вопросы: