linux退出命令行继续运行程序

fiy 其他 19

回复

共3条回复 我来回复
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

    在Linux中,当你在命令行中运行一个程序时,可以使用以下方法退出命令行但继续运行程序:

    1. 使用Ctrl+Z:在命令行运行程序时,按下Ctrl+Z会将程序放入后台,同时暂停程序的运行。此时你可以继续在命令行中输入其他命令或者退出命令行,程序会继续以后台进程的形式运行。如果需要重新回到前台继续运行程序,可以使用命令`fg`。

    2. 使用Ctrl+C:在命令行运行程序时,按下Ctrl+C会强制终止正在运行的程序。程序会立即停止执行,并返回到命令行提示符。但是这种方式会导致程序的运行被中断,不会继续运行。

    3. 使用nohup命令:nohup命令可以让程序在后台运行,并且不受终端关闭的影响。使用nohup命令的基本语法是:`nohup command &`。其中,`command`是要运行的命令,`&`表示在后台运行。例如,`nohup python my_script.py &`。这样,命令行将立即返回到提示符,而程序将继续以后台进程的形式运行。

    总结起来,使用Ctrl+Z可以将程序放入后台暂停运行,使用Ctrl+C可以强制终止程序的运行,而使用nohup命令可以让程序在后台继续运行。根据具体的需求选择相应的方法退出命令行但继续运行程序。

    2年前 0条评论
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    在Linux中,可以使用一些方法使命令行退出后继续运行程序。下面是五个方法:

    1. 使用后台运行符号”&”
    在命令行中,可以使用”&”符号来让程序在后台运行。例如,如果要运行一个名为”program”的程序,可以键入以下命令:
    “`
    $ ./program &
    “`
    这样程序就会在后台运行,而命令行会立即返回,你可以继续使用命令行执行其他操作。

    2. 使用nohup命令
    `nohup`命令可以让程序在退出命令行后继续运行,并且不受终端关闭的影响。例:
    “`
    $ nohup ./program &
    “`
    这样程序将在后台运行,不受终端关闭或断开连接的影响。

    3. 使用screen命令
    `screen`命令可以创建一个虚拟终端窗口,允许你在该窗口中运行程序,并且即使退出命令行也能继续使用该窗口。例:
    “`
    $ screen
    $ ./program
    “`
    在这个新窗口中运行程序后,你可以使用“Ctrl-a d”键组合将其挂起,并返回到原来的命令行界面。

    4. 使用tmux命令
    `tmux`命令与`screen`类似,也可以创建一个虚拟终端窗口,但它提供了更多功能。要在tmux窗口中运行程序,可以这样做:
    “`
    $ tmux
    $ ./program
    “`
    然后,你可以使用“Ctrl-b d”键组合将其挂起,并返回到原来的命令行界面。

    5. 使用disown命令
    如果你已经在前台运行一个程序,并且忘记加上”&”符号或使用`nohup`命令,你可以使用`disown`命令来使该程序在退出命令行后继续运行。例如:
    “`
    $ ./program
    (按下Ctrl-z将程序暂停)
    $ bg
    $ disown
    “`
    这样程序将在后台继续运行,并且不受终端关闭的影响。

    总结:
    在Linux中,你可以使用后台运行符号”&”、nohup命令、screen命令、tmux命令和disown命令等方法,使命令行退出后继续运行程序。每种方法都有自己的特点和用途,你可以根据实际需求选择适合你的方法。

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

    在Linux系统中,可以使用以下几种方法退出命令行终端而继续运行程序:

    1. 使用nohup命令
    nohup命令可以在命令行终端退出后继续在后台运行程序。使用nohup命令时,可以将程序的输出重定向到一个文件中,这样即使退出了终端,也可以通过查看该文件来获取程序的输出。

    使用nohup命令的基本语法如下:
    “`
    nohup [arguments] > 2>&1 &
    “`

    其中,``是要执行的命令或程序,`[arguments]`是命令的参数,``是程序的输出文件。使用2>&1将标准错误(stderr)重定向到标准输出(stdout)。&符号用于将程序放入后台运行。

    示例:
    “`
    nohup ./my-program > output.txt 2>&1 &
    “`

    2. 使用screen命令
    screen命令是一个终端复用工具,可以在一个终端中创建多个虚拟终端,并在这些虚拟终端中运行程序。在退出终端时,程序仍然在后台运行,并且可以通过重新连接screen会话来查看程序的输出。

    使用screen命令的基本流程如下:
    – 打开一个新的终端窗口。
    – 输入`screen`命令创建一个新的screen会话。
    – 在该会话中运行程序。
    – 按下Ctrl+A,然后按下d键将会话分离(即退出会话)。
    – 关闭终端窗口。

    这样,程序将在后台继续运行,可以通过重新连接screen会话来查看程序的输出。

    3. 使用tmux命令
    tmux命令也是一个终端复用工具,类似于screen命令,可以在一个终端中创建多个虚拟终端,并在这些虚拟终端中运行程序。

    使用tmux命令的基本流程和screen命令类似:
    – 打开一个新的终端窗口。
    – 输入`tmux`命令创建一个新的tmux会话。
    – 在该会话中运行程序。
    – 按下Ctrl+B,然后按下d键将会话分离(即退出会话)。
    – 关闭终端窗口。

    程序将在后台继续运行,可以通过重新连接tmux会话来查看程序的输出。

    总结:
    nohup命令、screen命令和tmux命令都可以在退出命令行终端后继续运行程序,而且程序的输出依然可见。根据具体的需求和习惯,可以选择其中一种方法来实现。

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

400-800-1024

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

分享本页
返回顶部