如何从linux中的文件中grep和修改环境变量?

Posted

技术标签:

【中文标题】如何从linux中的文件中grep和修改环境变量?【英文标题】:How to grep and modify the environment variable from a file in linux? 【发布时间】:2022-01-01 03:43:01 【问题描述】:
# 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

请随意使用您认为最好的方法。 谢谢!

【问题讨论】:

【参考方案1】:

您可以在一个简单的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 周围的双引号。

【讨论】:

以上是关于如何从linux中的文件中grep和修改环境变量?的主要内容,如果未能解决你的问题,请参考以下文章

Linux如何修改环境变量

linux下修改环境变量问题

linux环境变量

Linux下如何使环境变量文件生效

如何配置jdk和jre的环境变量

Linux学习笔记(二十四)管道符和作业控制shell变量环境变量配置文件