2012-09-14 41 views

回答

0

只需提供相关的文件的“点运算符“。

假设这两个文件在同一目录下,下面的工作:

t.sh:

#!/usr/bin/sh 

# Note the first dot on the following line 
. ./t.env 
echo $TESTVAR 

t.env:

TESTVAR="Hello world" 

运行时间:

~/tmp$ sh ./t.sh 
Hello world 
+0

谢谢卡尔! ---我一直想念“./”:) –

0

这是一个很常见的设计模式。沿线的思考

myscript.sh:

#!/path/to/shell 

CONFIG_FILE=myscript.env 
CONFIG_DIR=`dirname $0` 
# or e.g. CONFIG_DIR=/etc/myscript 

CONFIG="$CONFIG_DIR/$CONFIG_FILE" 
. $CONFIG 

echo "SOMEVAR=$SOMEVAR" 

myscript.env

SOMEVAR="The value of some var" 

现在/path/to/myscript.sh将输出SOMEVAR=The value of some var

+0

谢谢尤金! :) –