我是Shell Scripting的新手,我正在尝试将子脚本中的变量导出到父脚本。下面是代码,不幸的是它不起作用。不确定是什么问题。下面是代码。
我有一个脚本set-vars1.sh代码如下
#!/bin/bash
line_write="R"
FLAG=''
if [[ $line_write > " " && $line_write == "R" ]]
then
echo "Exporting"
export FLAG=Y
#export $FLAG;
elif [[ $line_write > " " && $line_write== "N" ]]
then
export FLAG=N
fi
EXIT_STATUS=-1
exit $EXIT_STATUS
我试图从set-vars2.sh调用此代码,如下所示
#!/bin/bash
./set-vars1.sh
echo $FLAG
当我尝试运行set-vars2.sh时,我无法回显FLAG的值并且它总是空白。
你能告诉我这里有什么问题,以及如何纠正错误。很长一段时间我一直在打破这个问题。所以任何帮助都会非常有帮助
答案 0 :(得分:3)
使用source
:
source ./set-vars1.sh
或者:
. ./set-vars1.sh
#The first . is intentional