运行 脚本中有多个后台进程

Running multiple background processes in script

我有以下格式的 shell 脚本:

cd /path/a/
make 
cd /path/b/
make
cd /path/c/
make

每个make命令在不同的目录下是相互独立的。我想通过 运行 在后台使用 '&'

设置不同的 make 命令来加速脚本
cd /path/a/
make & 
cd /path/b/
make &
cd /path/c/
make &

这行得通吗?虽然第一个 make 命令是 运行ning,但在下一行中目录已更改为 /path/b/。会不会影响后台第一次make commend?

编辑:我怀疑这种方法是否真的会让这个过程更快,并且想知道这些是否需要在单独的过程中 运行。

我相信 make 需要一个 -f 命令行参数,您可以在其中简单地指定所需的 makefile。所以,这应该有效: make -f /path/a/makefile & make -f /path/b/makefile & make -f /path/c/makefile &

应该没问题。 make 也接受 -C 选项以在读取 makefile 之前更改其目录。所以你也可以这样做:

make -C /path/a/ &
make -C /path/b/ &
make -C /path/c/ &