使用 bash 脚本运行时如何将参数传递给 python 脚本?

Pey*_*yto 1 command-line bash scripts

我正在尝试制作一个可以从命令行运行的应用程序。例如application -h。所以我把一个bash脚本,我/usr/local/bin/是不会cd /path/to/application 那么下一行./Main.py。但是如果我执行命令它不会收到-h. 但是,如果我在我的别名中.bashrc使用相同的命令,它就可以正常工作。如何更改 bash 脚本以使用参数?为什么别名有效但脚本无效?

Ser*_*nyy 5

因为 shell 脚本无法知道您想将参数传递给 Python 脚本。用

./Main.py "$@"
Run Code Online (Sandbox Code Playgroud)

也不要使用cd. 这是多余的。只需使用 ./Main.py 的完整路径,或者最好避免完全使用包装器脚本,除非必要。只需将 ./Main.py 放入作为 $PATH 变量一部分的目录之一,然后直接调用 Python 脚本。

主要的一点是,您尝试做的事情可能是错误的和不必要的,并且有更好的方法来做到这一点