UNIX中如何将一个文件中的变量调用到另一个文件中shell
What is the way to call variables in one file to another file in UNIX shell
我有一个 .KSH 文件,其中有两个变量 Var1、Var2 将不同文件中存在的 X、Y 值分配给 Var1、Var2(Var1=x,Var2=y)
if [ $STATUS != 0 ]
then
echo "ERROR - Failed to execute the BTEQ Script for abcd `date` " | mailx -s "Failed in Script xxxxx.ksh...!!!" $LIST1(first set of emails )
return $STATUS
fi
echo "Completed load process for abcd `date`" | mailx -s "Completed load process for abcd `date`" -a $TGT_DIR/$FILE_NM $LIST2(second set of emails)
将来自不同文件(.txt 或 .ksh)的两组电子邮件调用到我的 xxxxx.ksh 脚本
的最佳方式是什么
我们在 TTU 服务器的 bash 脚本(我们执行 bteq 和 tpt 的地方)中使用一个通用文件,虽然这不是特定于 TTU,而是任何 linux shell 脚本。
对于公共变量,我们有一个文件 variables.ksh
,其格式为:
export LIST1="name@domain.com name2@domain.com name3@domain.com"
export LIST2="name4@domain.com name5@domain.com"
export ETLLogon="someusername"
export WorkDatabase="Commonlyusedb"
export othervariables="other values"
然后在每个需要使用这些的 shell 脚本中,您只需将其与 .
:
一起引入
#!/bin/ksh
#import common variables
. /path/to/variables.ksh
#and now you can use these:
if [ $STATUS != 0 ]
then
echo "ERROR - Failed to execute the BTEQ Script for abcd `date` " | mailx -s "Failed in Script xxxxx.ksh...!!!" $LIST1
return $STATUS
fi
echo "Completed load process for abcd `date`" | mailx -s "Completed load process for abcd `date`" -a $TGT_DIR/$FILE_NM $LIST2
在这种情况下不需要 EXPORT 变量,但我们经常在脚本中使用 subshells,所以它很方便。
我有一个 .KSH 文件,其中有两个变量 Var1、Var2 将不同文件中存在的 X、Y 值分配给 Var1、Var2(Var1=x,Var2=y)
if [ $STATUS != 0 ]
then
echo "ERROR - Failed to execute the BTEQ Script for abcd `date` " | mailx -s "Failed in Script xxxxx.ksh...!!!" $LIST1(first set of emails )
return $STATUS
fi
echo "Completed load process for abcd `date`" | mailx -s "Completed load process for abcd `date`" -a $TGT_DIR/$FILE_NM $LIST2(second set of emails)
将来自不同文件(.txt 或 .ksh)的两组电子邮件调用到我的 xxxxx.ksh 脚本
的最佳方式是什么我们在 TTU 服务器的 bash 脚本(我们执行 bteq 和 tpt 的地方)中使用一个通用文件,虽然这不是特定于 TTU,而是任何 linux shell 脚本。
对于公共变量,我们有一个文件 variables.ksh
,其格式为:
export LIST1="name@domain.com name2@domain.com name3@domain.com"
export LIST2="name4@domain.com name5@domain.com"
export ETLLogon="someusername"
export WorkDatabase="Commonlyusedb"
export othervariables="other values"
然后在每个需要使用这些的 shell 脚本中,您只需将其与 .
:
#!/bin/ksh
#import common variables
. /path/to/variables.ksh
#and now you can use these:
if [ $STATUS != 0 ]
then
echo "ERROR - Failed to execute the BTEQ Script for abcd `date` " | mailx -s "Failed in Script xxxxx.ksh...!!!" $LIST1
return $STATUS
fi
echo "Completed load process for abcd `date`" | mailx -s "Completed load process for abcd `date`" -a $TGT_DIR/$FILE_NM $LIST2
在这种情况下不需要 EXPORT 变量,但我们经常在脚本中使用 subshells,所以它很方便。