debian

nohup在Debian中如何设置超时时间

小樊
46
2025-05-03 23:06:37
栏目: 智能运维

nohup 命令本身没有直接的超时时间设置选项。但是,你可以使用其他命令或脚本来实现这个功能。下面是一个使用 timeout 命令来实现超时功能的示例:

timeout <seconds> nohup your_command &

<seconds> 替换为你想要设置的超时时间(以秒为单位),将 your_command 替换为你想要执行的命令。这将在指定的时间后自动终止 your_command

例如,如果你想要在 60 秒后终止 my_script.sh 脚本,你可以这样运行:

timeout 60 nohup ./my_script.sh &

这将在 60 秒后自动终止 my_script.sh 脚本。注意,我们在命令末尾添加了 & 符号,以便在后台运行该命令。这样,即使你关闭终端或断开连接,命令也会继续执行。

如果你想要在超时后自动重启命令,可以使用一个简单的循环脚本。例如:

#!/bin/bash

while true; do
  nohup your_command &
  wait $!
  echo "Command finished, restarting in 60 seconds..."
  sleep 60
done

your_command 替换为你想要执行的命令。这个脚本将无限循环地运行 your_command,并在每次执行完成后等待 60 秒。你可以根据需要调整等待时间。

0
看了该问题的人还看了