Linux编程从参数文件导出变量

时间:2016-08-02 13:43:28

标签: linux scripting export

在shell脚本中,我使用以下命令执行参数文件;我想从该参数文件中导出所有变量。它在dev中工作,当我迁移到UAT时,它失败并出现错误":找不到命令"

主脚本有以下内容。我正在传递BaseDir路径作为参数(此处为/usr/test/proj

主要脚本:

#!/bin/sh
BaseDir=$1

. ${BaseDir}/test.prm

export TEST1
export TEST2

test.prm

TEST1=/usr/test/home  
TEST2=12345

我也尝试执行命令行:

. /usr/test/proj/test.prm

这在我的开发环境中取得了成功,但在UAT中失败了。两台服务器都在Linux上。

我做错了什么?

1 个答案:

答案 0 :(得分:1)

首先是mainscript.sh chmod + x,chmod 777 /home/script/mainscript.sh

#!/bin/bash
dir="$(dirname "$0")"
. $dir/functions/settings.sh
settings
echo $GODADDY_API_URL
echo $GODADDY_CSV_FILE
echo $GODADDY_CSV_FILE_DETAILED
echo $GODADDY_API_KEY

函数文件settings.sh chmod + x,chmod 777 /home/script/functions/script.sh

#!/bin/bash
dir="$(dirname "$0")"
SETTINGS="$dir/data/settings.list"
function settings {
    . $SETTINGS
}

设置文件settings.list chmod + x,chmod 777 /home/script/data/settings.list

GODADDY_API_URL=https://api.godaddy.com
GODADDY_CSV_FILE="All domains.csv"
GODADDY_CSV_FILE_DETAILED="All domains detailed.csv"
GODADDY_API_KEY=1qazxsw23edcvfr45tgb