我想为用户提供在后台运行shell脚本的功能。
我的shell程序实例化了许多其他shell脚本。
以下是我的脚本的小代码片段
./main.sh # Main script
in main.sh
I call preprocessing.sh
create_dir.sh
handle_file.sh
post_processing.sh
report_generation.sh
我想知道是否必须启动所有子脚本..如果我必须在后台启动所有脚本,最后通过在该测试运行中显示消息来通知用户是什么语法完整。
由于
基兰
答案 0 :(得分:1)
使用&
在后台启动您的流程,然后使用bash的内置wait
命令:
wait [n ...]
Wait for each specified process and return its termination sta‐
tus. Each n may be a process ID or a job specification; if a
job spec is given, all processes in that job’s pipeline are
waited for.
有几个例子here。例如:
# wait on 2 processes
sleep 10 &
sleep 10 &
wait %1 %2 && echo "Completed!"
答案 1 :(得分:0)
添加“&”到命令的末尾
I call preprocessing.sh &
create_dir.sh &
...