centos

CentOS nohup如何实现命令的自动重启

小樊
40
2025-07-26 23:42:22
栏目: 智能运维

在 CentOS 系统中,你可以使用 nohup 命令结合 & 符号将命令放入后台运行,并使用 while 循环来实现命令的自动重启。以下是一个示例:

  1. 打开终端。

  2. 输入以下命令:

nohup your_command &

# 用实际需要运行的命令替换 "your_command"

这将在后台运行你的命令,并将输出重定向到名为 nohup.out 的文件。

  1. 为了实现命令的自动重启,你可以使用一个简单的 while 循环。在终端中输入以下命令:
while true; do nohup your_command &; wait $!; echo "Command restarted due to failure"; done

# 用实际需要运行的命令替换 "your_command"

这将使得 your_command 在后台运行,如果命令失败(返回非零退出状态),则循环将捕获错误并输出 “Command restarted due to failure”。然后,循环将重新启动命令。

  1. 若要停止自动重启,可以按 Ctrl + C 终止循环。

请注意,这种方法仅适用于简单的自动重启需求。对于更复杂的场景,你可能需要考虑使用进程管理工具,如 systemdsupervisord

0
看了该问题的人还看了