如何配置可接收输入参数的Bash脚本别名
如何配置可接收输入参数的Bash脚本别名
嘿,我来帮你搞定这个参数传递的问题!你现在的脚本和别名没法传递参数,主要是因为没把输入的参数转发给main.py,下面给你两种实用的解决办法,选哪种都行~
方法一:修改现有脚本,让它支持参数传递
首先咱们更新runner.sh脚本,让它能接收你输入的参数,然后转发给main.py:
#!/bin/bash # 打印启动信息,顺便展示传入的参数 echo "Starting main.py in Production folder with parameters: $@" # 切换到Production目录,如果切换失败就直接退出,避免后续出错 cd Production || exit 1 # 把所有传入的参数都传给main.py python main.py "$@"
然后更新你的别名(如果之前的别名有问题的话),直接指向这个脚本就行:
alias runner='~/runner.sh'
小贴士:如果你的脚本已经有执行权限(
chmod +x ~/runner.sh),直接用别名指向脚本路径就好,不用加.(source),除非脚本里需要修改当前shell的环境变量,这里显然不需要~
方法二:用Bash函数替代别名(更灵活)
如果你的逻辑不复杂,其实可以不用单独的脚本,直接在~/.bashrc或者~/.bash_profile里定义一个函数,这样更轻便:
runner() { echo "Starting main.py in Production folder with parameters: $@" # 切换目录失败就返回,不继续执行 cd Production || return 1 python main.py "$@" }
让配置生效
不管用哪种方法,修改完配置后,要么重新打开一个终端,要么在当前终端执行下面的命令让配置立刻生效:
source ~/.bashrc
现在你就可以直接敲runner 5 5,参数会顺利传递给main.py啦!
备注:内容来源于stack exchange,提问作者frend123123
相关产品推荐
相关产品推荐

