在脚本中使用脚本运行脚本

时间:2013-04-17 06:15:37

标签: linux shell

我需要编写一个脚本(比如说A)来运行一个脚本(Say B) 目录。脚本B在一组子目录中运行脚本(比如说C)。当我 编写并成功执行了脚本B和C,将它们组合起来并编写 脚本A对我来说似乎有点难度。

B的一个例子是

MainDir="/home/kkk/mmm/dir" 
create_stack="${MainDir}/run/create_stack_and_find_seam.rb"
# cd into the working main directory where all the subdirs are present  
for fil_no in $@  
do
  cd ${MainDir}/${fil_no}
  pwd
  # the working script              
  echo ${fil_no}
  ${create_stack} ${fil_no}
done
# Go back to the original starting directory
cd $OLDPWD

上面的脚本(脚本B)运行Ruby脚本“create_stack_and_find_seam.rb” 在一组目录中列入了fil_no。 现在我有几个目录,其中不同的子目录列在“fil_no”中 各级。 所以我现在需要在Turn中运行的所有目录中执行脚本B. 所有不同的“create_stack_and_find_seam.rb”(即脚本C) subdiretories。

1 个答案:

答案 0 :(得分:0)

继我的评论之后,如果我们将脚本B中的'MainDir'更改为如下所示的参数

MainDir=$1 

然后我们可以将脚本A编写为:

#!/bin/bash
ScriptB.sh /home/first/directory
ScriptB.sh /home/second/directory

当然,这意味着要更改${MainDir}/run/create_stack_and_find_seam.rbcd ${MainDir}/${fil_no}部分。如果这些只在一个地方,那么删除MainDir并添加一个新变量将有助于