Bash 执行包含变量的脚本
在一个脚本中,我们正在同一目录中执行另一个脚本,其中包含一些变量定义: 脚本1:Bash 执行包含变量的脚本,bash,shell,unix,Bash,Shell,Unix,在一个脚本中,我们正在同一目录中执行另一个脚本,其中包含一些变量定义: 脚本1: cd $configDir script=PLS00170.sh ./config_fecha$script.sh if [ ! -f /f_PL_50007622_Hist_Rel_Sico_Vta_Cp.$F1S4_FEOPERACA1 ] #! /bin/ksh #------------------------------------ #FEOPERAC #-----------------------
cd $configDir
script=PLS00170.sh
./config_fecha$script.sh
if [ ! -f /f_PL_50007622_Hist_Rel_Sico_Vta_Cp.$F1S4_FEOPERACA1 ]
#! /bin/ksh
#------------------------------------
#FEOPERAC
#------------------------------------
F1S4_FEOPERACA1=20150401
....
配置\u fechaPLS00170.sh.sh:
cd $configDir
script=PLS00170.sh
./config_fecha$script.sh
if [ ! -f /f_PL_50007622_Hist_Rel_Sico_Vta_Cp.$F1S4_FEOPERACA1 ]
#! /bin/ksh
#------------------------------------
#FEOPERAC
#------------------------------------
F1S4_FEOPERACA1=20150401
....
脚本1无法解析脚本$F1S4\u FEOPERACA1
:
系统输出:
...
+ ./config_fechaPLS00170.sh.sh
+ [ ! -f /f_PL_50007622_Hist_Rel_Sico_Vta_Cp. ]
...
有什么想法吗?您正在自己的进程中执行第二个脚本,因此在其中定义的任何变量在退出时都将丢失 您可以将第二个脚本“源代码”转换为第一个脚本。这将运行它,就像文本确实在那里一样。你可以用它来做
. ./config_fechaPLS00170.sh.sh # note the first dot, then a space
或
您正在自己的进程中执行第二个脚本,因此在其中定义的任何变量在退出时都将丢失 您可以将第二个脚本“源代码”转换为第一个脚本。这将运行它,就像文本确实在那里一样。你可以用它来做
. ./config_fechaPLS00170.sh.sh # note the first dot, then a space
或
您正在自己的进程中执行第二个脚本,因此在其中定义的任何变量在退出时都将丢失 您可以将第二个脚本“源代码”转换为第一个脚本。这将运行它,就像文本确实在那里一样。你可以用它来做
. ./config_fechaPLS00170.sh.sh # note the first dot, then a space
或
您正在自己的进程中执行第二个脚本,因此在其中定义的任何变量在退出时都将丢失 您可以将第二个脚本“源代码”转换为第一个脚本。这将运行它,就像文本确实在那里一样。你可以用它来做
. ./config_fechaPLS00170.sh.sh # note the first dot, then a space
或
啊。为什么要在脚本的文件名中嵌入数据,而不仅仅是传递参数呢。为什么要在脚本的文件名中嵌入数据,而不仅仅是传递参数呢。为什么要在脚本的文件名中嵌入数据,而不仅仅是传递参数呢。为什么要在脚本的文件名中嵌入数据,而不仅仅是传递参数?这正是我需要的。谢谢这正是我需要的。谢谢这正是我需要的。谢谢这正是我需要的。谢谢