2015-04-08 51 views
0

內部,我們正在執行在同一目錄至極另一個腳本的腳本包含一些變量的定義:執行包含腳本變量

SCRIPT1:

cd $configDir 
script=PLS00170.sh 
./config_fecha$script.sh 

if [ ! -f /f_PL_50007622_Hist_Rel_Sico_Vta_Cp.$F1S4_FEOPERACA1 ] 

config_fechaPLS00170.sh.sh:

#! /bin/ksh 
#------------------------------------ 
#FEOPERAC 
#------------------------------------ 
F1S4_FEOPERACA1=20150401 
.... 

腳本1無法解析腳本$F1S4_FEOPERACA1

SYSOUT:

... 
+ ./config_fechaPLS00170.sh.sh 
+ [ ! -f /f_PL_50007622_Hist_Rel_Sico_Vta_Cp. ] 
... 

任何想法?

+0

唉。爲什麼要在腳本的文件名中嵌入數據,而不是僅傳遞參數? – chepner

回答

3

您正在自己的進程中執行第二個腳本,因此在此處定義的任何變量在退出時都會丟失。

您可以改爲將第二個腳本「源」到第一個腳本中。這將運行它,就好像文本字面上那樣。你可以做到這一點與

. ./config_fechaPLS00170.sh.sh # note the first dot, then a space 

source ./config_fechaPLS00170.sh.sh 
+0

這正是我需要的。 謝謝 – user3270648

相關問題