linux - nohup 或 disown 是否适用于批处理脚本?

标签 linux nohup

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

整个过程可能需要一天左右的时间才能完成,我想在中间退出。我知道有 nohup 或者,如果你一开始就忘记了,disown 以确保即使你关闭连接,进程仍然会运行,但我不确定在我的案例中我应该把那个电话放在哪里。只有引导命令的脚本;仅在命令上;还是两者兼而有之?

如果这是一个愚蠢的问题,我深表歉意,但我无法在网上找到准确回答该问题的简单答案,我不能冒险因为我犯了错误而中断这些流程。

最佳答案

当然可以使用nohup:

nohup <script name> &

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

关于linux - nohup 或 disown 是否适用于批处理脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14280776/

相关文章:

linux - Hive 获取超过平均值 10000 的行

linux - 不使用库的 Hello World

c - 如何通过从 ini 文件中提取值来更新指针的值?

bash - nohup 和 enter 将停止进程 : why?

unix - 在通过 ssh 的 nohup 期间我 ctr+c 之后会发生什么?

arrays - bash 脚本中 Cat 的替代方案?

linux - Raven DB 4.1.2 在 Java 中挂起流式查询

linux - 使用 nohup -> 输出到文件和控制台

python - 从python运行程序,并在脚本被杀死后继续运行

macos - Nohup 不适用于 OSX