Bash 执行包含变量的脚本

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 #-----------------------

在一个脚本中,我们正在同一目录中执行另一个脚本,其中包含一些变量定义:

脚本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
#------------------------------------
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


啊。为什么要在脚本的文件名中嵌入数据,而不仅仅是传递参数呢。为什么要在脚本的文件名中嵌入数据,而不仅仅是传递参数呢。为什么要在脚本的文件名中嵌入数据,而不仅仅是传递参数呢。为什么要在脚本的文件名中嵌入数据,而不仅仅是传递参数?这正是我需要的。谢谢这正是我需要的。谢谢这正是我需要的。谢谢这正是我需要的。谢谢