linux超时不关闭的命令

worktile 其他 86

回复

共3条回复 我来回复
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    在Linux系统中,可以使用以下命令来设置超时不关闭:

    1. nohup命令:nohup命令可以在终端关闭后继续在后台运行程序,并且不受终端关闭的影响。使用格式如下:
    “`
    nohup command &
    “`
    其中,command为要执行的命令。使用nohup命令后,系统会将命令的输出重定向到nohup.out文件中。

    2. screen命令:screen命令可以创建一个虚拟终端窗口,并在该窗口中执行命令。即使终端关闭或断开连接,命令仍然会在虚拟终端窗口中运行。使用格式如下:
    “`
    screen -S session_name
    “`
    在虚拟终端窗口中执行命令后,可以按下Ctrl+A+D快捷键将其放入后台运行。

    3. disown命令:disown命令可以将一个正在运行的命令从当前终端中“脱离”,使其成为一个后台任务。使用格式如下:
    “`
    disown -h job_id
    “`
    其中,job_id为要脱离的任务的作业号。通过使用disown命令,可以保证即使终端关闭,任务仍然继续在后台运行。

    需要注意的是,使用以上命令时,应当确保命令的执行不会产生交互式的输入请求,否则终端关闭后可能会导致程序异常退出。此外,为了方便管理和查看后台任务,也可以使用工具如tmux、byobu等来进行会话管理。

    6个月前 0条评论
  • 不及物动词的头像
    不及物动词
    这个人很懒,什么都没有留下~
    评论

    在Linux系统中,有一些命令可以用来设置超时时间,使其在一定时间后关闭或终止。以下是几个常用的命令:

    1. timeout命令:timeout命令可以在预定的时间内限制命令的运行时间。它的语法如下:
    timeout [OPTION] DURATION COMMAND [ARG]…
    例如,要限制命令运行10秒,可以使用以下命令:
    timeout 10s command

    2. nohup命令:nohup命令可以在后台运行命令,并将其输出重定向到文件中。即使关闭终端,命令仍然会继续运行。它的语法如下:
    nohup COMMAND [ARG]…
    例如,要在后台运行命令并将输出保存到文件中,可以使用以下命令:
    nohup command > output.txt &

    3. screen命令:screen命令可以创建一个可以在其中运行多个会话的虚拟终端。即使关闭终端,会话也会继续运行。它的语法如下:
    screen [OPTIONS] [CMD [ARGS]]
    例如,要创建一个名为mySession的新会话,可以使用以下命令:
    screen -S mySession

    4. disown命令:disown命令可以将正在运行的命令从当前的终端会话中分离,使其在后台继续运行。它的语法如下:
    disown [-h] [-ar] [jobspec …]
    例如,要将正在运行的命令从当前终端中分离,可以使用以下命令:
    disown -a

    5. kill命令:kill命令可以用来终止正在运行的进程。它的语法如下:
    kill [-s SIGNAL | -n SIGNAL | -SIGNAL] PID
    例如,要终止一个进程,可以使用以下命令:
    kill PID

    这些命令可以帮助你在Linux系统中设置超时时间或保持命令在后台运行,从而避免在系统未响应或终端关闭时命令被关闭。

    6个月前 0条评论
  • 飞飞的头像
    飞飞
    Worktile&PingCode市场小伙伴
    评论

    在Linux中,有很多方法可以实现超时不关闭的命令。以下是几种常见的方法和操作流程。

    方法一:使用nohup命令
    1. 打开终端,并输入以下命令:
    “`
    nohup your_command &
    “`
    `your_command`是你要执行的命令。例如,如果要执行`python my_script.py`这个命令,那么命令就是`python my_script.py`。
    2. 按下Enter键后,你的命令将在后台运行,终端将显示一个消息,类似于:`nohup: ignoring input and appending output to ‘nohup.out’`。
    3. 关闭终端窗口或者断开SSH连接后,你的命令将继续在后台运行,直到完成。

    方法二:使用screen命令
    1. 打开终端,并输入以下命令来创建一个新的screen会话:
    “`
    screen -S session_name
    “`
    `session_name`是你希望为会话使用的名称。例如,你可以输入`screen -S my_session`。
    2. 按下Enter键后,你将进入一个全新的shell会话。
    3. 在新的screen会话中,输入你要执行的命令。例如,输入`your_command`。
    4. 按下Ctrl + A,然后按下D来分离会话。
    5. 关闭终端窗口或者断开SSH连接后,你的命令将继续在后台运行,直到完成。
    6. 如果需要重新连接到已分离的screen会话,可以使用以下命令:
    “`
    screen -r session_name
    “`
    `session_name`是你之前创建会话时使用的名称。

    方法三:使用tmux命令
    1. 打开终端,并输入以下命令来创建一个新的tmux会话:
    “`
    tmux new-session -s session_name
    “`
    `session_name`是你希望为会话使用的名称。例如,你可以输入`tmux new-session -s my_session`。
    2. 按下Enter键后,你将进入一个全新的shell会话。
    3. 在新的tmux会话中,输入你要执行的命令。例如,输入`your_command`。
    4. 按下Ctrl + B,然后按下D来分离会话。
    5. 关闭终端窗口或者断开SSH连接后,你的命令将继续在后台运行,直到完成。
    6. 如果需要重新连接到已分离的tmux会话,可以使用以下命令:
    “`
    tmux attach-session -t session_name
    “`
    `session_name`是你之前创建会话时使用的名称。

    无论是使用nohup命令、screen命令还是tmux命令,都可以实现在Linux中超时不关闭的命令。你可以根据个人喜好选择适合自己的方法来运行长时间命令。

    6个月前 0条评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部