如何从linux中的文件中grep和修改环境变量?
How to grep and modify the environment variable from a file in linux?
# input file.yaml
conda_name: "test"
user_name: "foo"
如何获取 user_name 变量并导出到本地环境变量(无需安装额外的包)?我不知道如何导出变量
# where I am stuck
grep 'user_name:' file.yaml | sed 's/:/=/g'
# export the variable
请随意使用您认为最好的方法。
谢谢!
您可以在一个简单的 bash
循环中执行此操作:
while IFS=': ' read -r k v; do
[[ $k = "user_name" ]] && declare -x $k="${v//\"/}"
done < file
echo "user_name"
foo
declare -x $k="${v//\"/}"
导出一个名为 $k
的变量,即 user_name
。 ${v//\"/}
去除输入文件中 foo
.
附近的双引号
# input file.yaml
conda_name: "test"
user_name: "foo"
如何获取 user_name 变量并导出到本地环境变量(无需安装额外的包)?我不知道如何导出变量
# where I am stuck
grep 'user_name:' file.yaml | sed 's/:/=/g'
# export the variable
请随意使用您认为最好的方法。 谢谢!
您可以在一个简单的 bash
循环中执行此操作:
while IFS=': ' read -r k v; do
[[ $k = "user_name" ]] && declare -x $k="${v//\"/}"
done < file
echo "user_name"
foo
declare -x $k="${v//\"/}"
导出一个名为 $k
的变量,即 user_name
。 ${v//\"/}
去除输入文件中 foo
.