如何在Bash中一次性设置变量,实现多脚本复用避免重复定义?
实现方案
方法一:定义Shell函数
这是最直接的实现方式,无需额外脚本文件:
- 在当前Shell会话中定义函数(如果需要永久生效,把这段代码写入
~/.bashrc或~/.zshrc这类Shell配置文件):VALUES() { A=1 B=2 C=3 "$@" } - 若修改了配置文件,执行
source ~/.bashrc(替换为你实际使用的配置文件)让函数立即生效。 - 之后就能按你期望的方式调用Python脚本:
VALUES run-app1.py VALUES run-app2.py
要更新变量值时,只需要修改函数里的A=1 B=2 C=3这一行即可,确保所有调用统一使用最新值。
方法二:使用独立脚本文件
如果你偏好用独立的get-values.sh脚本实现:
- 创建
get-values.sh文件,写入以下内容:#!/bin/bash A=1 B=2 C=3 "$@" - 给脚本添加执行权限:
chmod +x get-values.sh - 若想直接用
VALUES作为命令调用,可以设置Shell别名:
(如果需要永久生效这个别名,把上述别名定义写入你的Shell配置文件,再执行source命令生效)alias VALUES='./get-values.sh' - 现在就能按目标方式调用脚本:
VALUES run-app1.py VALUES run-app2.py
后续更新变量时,只需编辑get-values.sh中的环境变量定义行即可。
内容的提问来源于stack exchange,提问作者Johnny Metz
相关产品推荐
相关产品推荐

