不要停止或拒绝批处理脚本的工作



我有一个包含302个命令的文件,这些命令在我们的服务器上启动进程。同时执行所有这些命令会杀死它,所以我有一个脚本,将一个命令推送到shell,等待进程完成,然后调用下一个。

整个过程可能需要一天左右才能完成,我想在这段时间内注销。我知道有nohup,或者,如果你忘记了,在开始的时候,disown,以确保一个进程仍然会运行,即使你关闭连接,但我不确定我应该把这个调用放在我的情况下。只有传输命令的脚本;只在命令上;还是两者都有?

如果这是一个愚蠢的问题,我很抱歉,但是我在网上找不到一个简单的答案来回答这个问题,我不能因为我错了什么而冒险破坏这些过程。

当然可以使用nohup:

nohup <script name> &

可以执行此命令并安全退出。然后可以重新登录并使用ps命令查看脚本是否仍在运行。我还将创建一个日志文件,以便能够监视进度,并将所有标准和错误输出重定向到该文件。

您可以安排脚本运行,这样您就不必在进程运行时连接到服务器。参见cron帮助:http://www.scrounge.org/linux/cron.html

最新更新