如何使用Shell触发多个依赖程序



我有一个像这样模块化的应用程序:

`APP
    PART1
       part1.sh
    PART2
       part2.o
    PART3
       part3.o`

part1.o的输入文件生成了一个输出文件,该文件再次是part2.o的输入文件,该文件生成了另一个文件,该文件是part3.o的输入,最后是整个应用程序的输出。

我打算有一个run.sh文件,该文件应将第一个输入文件用于子申请(PART1),so so so so the the the trigts剩余的子应用程序,然后将最后一个输出存储在文件名中,用命令提到。这样的东西:

run.sh input.txt output.txt

目前我的外壳看起来像这样:

OUTPUT1="output1.txt"
OUTPUT2="output2.txt"
./PART1/part1.sh  $0 > OUTPUT1 &&
./PART2/part2.o < OUTPUT1 > OUTPUT2 &&
./PART3/part3.o < OUTPUT2 > $1

当前,如果我运行此代码,我将获得以下输出无限的长度:

+ ./run.sh
+ ./run.sh
+ ./run.sh
.
.
.
.

有人可以帮我吗?我究竟做错了什么?

您使用位置参数不正确。

run.sh input.txt output.txt

将填充位置参数,值以下为

给出的值

$0 = run.sh

$1 = input.txt

$2 = output.txt

更多关于位置参数的信息

最新更新