Hi folks,
I have the following configuration file:
Code:
/tmp> cat nir.conf
SCHEMA_NAME=NIR
SCHEMA_PASS=NIR
CGI_PORT=:7778
HOST_PORT=:7778
COMPATIBLE=10.1.0
STATIC_FILES_INITIAL=core
TIME_ZONE=-2
DAYLIGHT_SAVING_TIME=NULL
CP_PLUGIN_SUPPORTED=FALSE
CPPlugin=DefaultCPPlugin
REPLACE_BO_USER=NO
From this file I should generate "define" parameters file for sqlplus and exporting those parameters in ksh environment.
I wrothe the following script:
Code:
#! /bin/ksh
RESPONSE_FILE=/tmp/nir.conf
cat $RESPONSE_FILE | while read line
do
echo "define $line" >> /tmp/def_var_DatabaseLayer.sql
export $line
done
echo ${SCHEMA_NAME}
The problem is that the parameters are not exported:
Code:
/tmp> ./gen_param_files.ksh
RESPONSE_FILE=/tmp/nir.conf
+ RESPONSE_FILE=/tmp/nir.conf
cat $RESPONSE_FILE | while read line
do
echo "define $line" >> /tmp/def_var_DatabaseLayer.sql
export $line
done
+ cat /tmp/nir.conf
+ read line
+ echo define SCHEMA_NAME=NIR
+ >> /tmp/def_var_DatabaseLayer.sql
+ export SCHEMA_NAME=NIR
+ read line
+ echo define SCHEMA_PASS=NIR
+ >> /tmp/def_var_DatabaseLayer.sql
+ export SCHEMA_PASS=NIR
+ read line
+ echo define CGI_PORT=:7778
+ >> /tmp/def_var_DatabaseLayer.sql
+ export CGI_PORT=:7778
+ read line
+ echo define HOST_PORT=:7778
+ >> /tmp/def_var_DatabaseLayer.sql
+ export HOST_PORT=:7778
+ read line
+ echo define COMPATIBLE=10.1.0
+ >> /tmp/def_var_DatabaseLayer.sql
+ export COMPATIBLE=10.1.0
+ read line
+ echo define STATIC_FILES_INITIAL=core
+ >> /tmp/def_var_DatabaseLayer.sql
+ export STATIC_FILES_INITIAL=core
+ read line
+ echo define TIME_ZONE=-2
+ >> /tmp/def_var_DatabaseLayer.sql
+ export TIME_ZONE=-2
+ read line
+ echo define DAYLIGHT_SAVING_TIME=NULL
+ >> /tmp/def_var_DatabaseLayer.sql
+ export DAYLIGHT_SAVING_TIME=NULL
+ read line
+ echo define CP_PLUGIN_SUPPORTED=FALSE
+ >> /tmp/def_var_DatabaseLayer.sql
+ export CP_PLUGIN_SUPPORTED=FALSE
+ read line
+ echo define CPPlugin=DefaultCPPlugin
+ >> /tmp/def_var_DatabaseLayer.sql
+ export CPPlugin=DefaultCPPlugin
+ read line
+ echo define REPLACE_BO_USER=NO
+ >> /tmp/def_var_DatabaseLayer.sql
+ export REPLACE_BO_USER=NO
+ read line
echo ${SCHEMA_NAME}
+ echo
As you can see,${SCHEMA_NAME} is empty.
What did I do wrong?
Is there a better way to export parameters in loop according to configuration file?
Thanks in advance,
Nir