庆典。从另一个脚本执行一个脚本并退出

时间:2014-11-04 16:02:13

标签: bash

你可以帮我解决以下问题:

我正在尝试使用:

从其他脚本test1执行一个脚本 - test2
bash -c  "/test2 -f$(printf " /etc/test2.conf" "$@")"
一切都很好。问题是test2脚本连续运行并且无法中断,因此test1脚本也在运行。这是不必要的,应该停止test1。 我需要的所有test1脚本都是执行test2脚本并退出。 我想只用没有cron或任何类似工具的bash来完成任务。

谢谢。

1 个答案:

答案 0 :(得分:0)

test1已经是一个bash脚本,所以它不需要调用bash。如果test2是可执行的(有+ x设置)那么它是一个命令,可以直接使用。

/path/to/test2 -f$(printf "/etc/test2.conf" "$@") &

&符号分叉命令并让它运行。然后test1就可以退出了。


当您关闭控制台,注销等时,上述操作将被挂起信号终止。nohup修复了此问题。

nohup /path/to/test2 -f$(printf "/etc/test2.conf" "$@") &