Como posso passar parâmetros para um script python ao executá-lo com um script bash?

Como posso passar parâmetros para um script python ao executá-lo com um script bash?

Estou tentando fazer um aplicativo que funcione na linha de comando. Por exemplo application -h. Então coloquei um script bash no meu /usr/local/bin/que faz cd /path/to/application Then na próxima linha ./Main.py. Mas se eu executar o comando ele não receberá o arquivo -h. No entanto, se eu fizer um alias no meu .bashrccom os mesmos comandos, ele funcionará perfeitamente. Como eu poderia alterar o script bash para funcionar com parâmetros? E por que o alias funciona, mas não o script?

Responder1

Porque o shell script não tem como saber que você deseja passar argumentos para o seu script Python. Usar

./Main.py "$@"

Também não use cd. É redundante. Basta usar o caminho completo para ./Main.py ou, melhor ainda, evitar ter um script wrapper, a menos que seja necessário. Basta colocar ./Main.py em um dos diretórios que fazem parte da sua variável $PATH e chamar seu script Python diretamente.

O ponto principal é que o que você está tentando fazer provavelmente é errado e desnecessário, e existem maneiras melhores de fazer isso

informação relacionada