我正在尝试编写一个bash脚本,它将从文件中读取变量对,然后在循环中使用它们。我正在尝试使用这个
while read p; do $p; echo "$a and $b"; done < text.txt
text.txt包含以下内容:
a="teststring"; b="anothertest"
a="teststring1"; b="anothertest1"
a="teststring2"; b="anothertest2"
输出看起来像这样:
bash: a="teststring";: command not found
and
bash: a="teststring1";: command not found
and
我发现了类似的问题command line arguments from a file content
但无法弄清楚如何将答案应用于我的特定情况。谢谢!
答案 0 :(得分:0)
使用邪恶eval
的一种解决方案,仅用于测试目的,不用于生产:
while read line; do
eval "$line"
echo "$a and $b"
done < file.txt
teststring and anothertest
teststring1 and anothertest1
teststring2 and anothertest2