Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash 从不同脚本设置特定变量_Bash - Fatal编程技术网

Bash 从不同脚本设置特定变量

Bash 从不同脚本设置特定变量,bash,Bash,我需要从一个脚本中获取特定变量,并在另一个脚本中使用它们 例如: 原文: VARA=4 # Some description of VARA VARB=6 # Some description of VARB SOMEOTHERVAR="Foo" /call/to/some/program 我想写第二个脚本,它需要VARA和VARB,但不需要SOMEOTHERVAR或对程序的调用 我已经可以做到: eval $(grep 'VARA=' or

我需要从一个脚本中获取特定变量,并在另一个脚本中使用它们

例如:

原文:

VARA=4              # Some description of VARA
VARB=6              # Some description of VARB
SOMEOTHERVAR="Foo"
/call/to/some/program
我想写第二个脚本,它需要
VARA
VARB
,但不需要
SOMEOTHERVAR
或对程序的调用

我已经可以做到:

eval $(grep 'VARA=' origscript.sh)
eval $(grep 'VARB=' origscript.sh)
这似乎可行,但当我想同时做这两件事时,就像这样,它只设置了第一件:

eval $(grep 'VAR[AB]=' origscript.sh)
eval "$(grep 'VAR[AB]=' origscript.sh)"

因为它似乎连接了
grep
返回的两行。(这可能意味着注释保存了第一个赋值。)

在其周围加上引号,以便
grep
输出中的换行符不会变成空格