linux终端后继续运行命令

fiy 其他 60

回复

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

    在Linux终端中,可以使用以下方法来使命令在后台持续运行:

    1. 使用&符号:在命令末尾添加&符号,例如:
    “`
    $ command &
    “`
    这样命令就会在后台运行,终端会立即返回并允许你继续输入其他命令。

    2. 使用nohup命令:nohup命令可以在命令前加上nohup关键字,例如:
    “`
    $ nohup command
    “`
    使用nohup命令后,即使终端关闭,命令也会继续在后台运行。输出会默认保存到nohup.out文件中,你可以使用重定向符号来自定义输出文件,例如:
    “`
    $ nohup command > output.log
    “`

    3. 使用screen命令:screen命令可以创建一个虚拟终端会话,并在其中运行命令。使用screen命令后,即使终端关闭,虚拟终端会话也会持续运行。具体使用方法如下:
    – 启动一个新的screen会话:
    “`
    $ screen
    “`
    – 在screen会话中运行命令,例如:
    “`
    $ command
    “`
    – 按下Ctrl + A,然后按下D键,即可将screen会话切换到后台,继续使用终端输入其他命令。
    – 若要重新连接到之前的screen会话,可以使用以下命令:
    “`
    $ screen -r
    “`

    综上所述,以上是在Linux终端中使命令在后台持续运行的几种方法。具体使用哪种方法取决于你的需求和使用习惯。

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

    在Linux终端中,可以使用一些特殊的命令和技巧来让命令在后台继续运行,而不会阻塞终端。下面是一些常用的方法:

    1. 使用&符号:在命令的末尾加上&符号,可以让命令在后台运行。例如,要在后台执行一个长时间运行的命令,可以输入:
    “`bash
    long_running_command &
    “`

    2. 使用nohup命令:nohup命令可以让命令忽略SIGHUP信号,从而在终端退出后继续运行。例如,要在后台运行一个脚本文件,可以输入:
    “`bash
    nohup ./script.sh &
    “`

    3. 使用screen命令:screen是一个多重终端窗口管理器,可以创建多个虚拟终端窗口,并可以在这些窗口之间切换。通过在screen中运行命令,即使终端会话断开,命令仍然会继续运行。首先,使用screen命令创建一个新的screen会话:
    “`bash
    screen
    “`
    然后,在新的screen会话中运行命令,例如:
    “`bash
    long_running_command
    “`
    要在离开终端后继续查看并操作正在运行的screen会话,可以使用以下命令:
    “`bash
    screen -r
    “`

    4. 使用tmux命令:tmux与screen类似,也是一个终端窗口管理器,可以创建多个虚拟终端窗口,并在这些窗口之间切换。与screen相比,tmux提供了更多的功能和自定义选项。要在tmux中运行命令,可以输入以下命令:
    “`bash
    tmux new-session -s session_name ‘long_running_command’
    “`
    要在离开终端后继续查看并操作正在运行的tmux会话,可以使用以下命令:
    “`bash
    tmux attach-session -t session_name
    “`

    5. 使用后台任务管理器:Linux终端提供了一些后台任务管理器,可以轻松地管理和控制后台任务。例如,可以使用jobs命令来列出当前在后台运行的任务,并使用fg命令将任务切换到前台。要将任务放入后台运行,可以使用Ctrl+Z暂停任务,然后使用bg命令将任务放入后台运行。例如:
    “`bash
    long_running_command
    Ctrl+Z
    bg
    “`

    除了上述方法外,还可以使用其他的工具和方法来让命令在后台继续运行,如使用at命令、使用cron调度等。根据具体的需求和情况,选择合适的方法可以更好地管理命令的后台运行。

    2年前 0条评论
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

    在Linux终端中,我们可以使用以下几种方法来使命令在后台继续运行。

    1. 使用 & 符号
    在命令的末尾添加 & 符号,表示将该命令放到后台运行。这样做的好处是,你可以继续在终端中输入其他命令,而不必等待当前命令执行完毕。

    例如,你可以输入以下命令:
    “`
    $ long_running_command &
    “`
    这将使命令 long_running_command 在后台运行。

    2. 使用 nohup 命令
    nohup 是一个Linux的命令行程序,用于在后台运行命令,即使关闭了终端或断开了SSH连接,命令仍会继续运行。

    语法如下:
    “`
    $ nohup command &
    “`
    示例:
    “`
    $ nohup long_running_command &
    “`

    3. 使用 disown 命令
    disown 命令用于从当前的终端会话中移除作业(job),使其在后台继续运行。作业可以是当前会话中活动的进程或任务。

    使用 disown 命令的步骤如下:
    首先,运行需要放到后台的命令,通常是使用 & 符号来放到后台运行。
    然后,运行 disown 命令,指定需要移除的作业。

    示例:
    “`
    $ long_running_command &
    $ disown %1
    “`
    上面的命令将 long_running_command 放到后台运行,然后使用 disown 命令从当前终端会话中移除该作业。

    4. 使用 tmux 或 screen
    tmux 和 screen 是两个功能强大的终端复用工具,可以在终端中创建多个会话,并使会话在后台运行。

    你可以使用以下步骤在 tmux 中创建会话:
    首先,安装 tmux(如果尚未安装):
    “`
    $ sudo apt-get install tmux
    “`
    然后,在终端中运行 tmux 命令启动 tmux。
    创建一个新会话:
    “`
    $ tmux new-session -s session_name
    “`
    在这个会话中运行你的命令。
    按下 Ctrl + B,然后按下 D,将会话放到后台运行。
    你可以在需要时重新连接到该会话,并查看命令的输出。

    除了 tmux,还可以使用 screen。

    通过以上几种方法,你可以将命令放到后台继续运行,同时继续使用终端执行其他操作。请根据你的具体需求选择合适的方法。

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

400-800-1024

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

分享本页
返回顶部