linux - 如何一次读取一行多行变量?

标签 linux sh

我有一个变量,我们可以将其称为 largeVar 并具有以下内容:

var1="blah1"
var2="blah2"
var3="blah3"

因此,如果我执行 printf "$largeVar" 我会得到上面的确切内容。但是,我需要将这些变量添加到我的环境中,而不创建属性文件。所以我正在尝试这样做:

for var in "$largeVar"
do 
   eval "$var"
done

但这只是评估 $largeVar 而不是每一行。所以我然后尝试了这个:

while cat "$largeVar" | read var
do
   printf "$var"
done

这似乎有效......有点(我只用 printf 进行了测试,看看会发生什么),但最后一行说 echo : 文件名太长

有什么办法可以做我想做的事吗?

最佳答案

您可以执行eval $largeVar,因为环境变量可以在 bash 中用空格分隔。

关于linux - 如何一次读取一行多行变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17347183/

相关文章:

Javascript自动重启

linux - 使用命令行将HDFS文件作为附件发送

linux - 查找具有可变字符数的文件名

linux - 如何使用源从外部文件导入环境变量

bash - 在 while 循环内修改的变量不会被记住

shell - 如何从终端对文件运行 vim 命令?

java - 如何强制启用 Java 文本抗锯齿功能?

bash - 如何测试空字符串的多个变量

mysql - sh 脚本在 crontab 中不起作用

git - 如何为 gitk 添加更好的复制检测?