在IF ELIF语句中执行一系列外部/第三方程序

时间:2011-10-25 14:44:40

标签: linux bash shell if-statement

我的脚本中有一个prety long IF ELIF语句,它有效。当我开始尝试执行外部程序/第三方软件时,我的问题开始了。

.....; then
prog1 -some flags
prog2 -some flags
prog3 -some more flags
prog4 -even more flags
elif [......]

正如你可以猜到的那样,我发现这不是收费的,我能看到的唯一工作就是把这些命令放到一个单独的shell脚本中并按如下方式调用它:

.....; then
./myshellscript.sh
elif [......]

是否在脚本中包含它自己而不必调用shell脚本来完成我的所有任务。我通常会咬紧牙关并做到这一点,但这意味着有数百个外部shell脚本会混乱文件夹,而不是有一个包含执行手头任务所需的所有代码的deffinitive脚本。

再次感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

如果你只关心每个分支中脚本的调用次数,以及每个分支中调用的脚本是否相同,那么你可以使用bash函数来完成工作。

查看this page,了解如何在bash中编写函数。

这基本上是相同的方式,就像你将公共代码分解成几乎任何语言的函数一样。