linux命令执行不等待结果

不及物动词 其他 716

回复

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

    在Linux中,如果我们想要执行一个命令但不等待其结果返回,可以使用以下几种方法:

    1. 使用后台运行符(&):在命令的最后加上&符号,就可以让命令在后台运行而不阻塞终端。
    例如:
    “`
    $ command &
    “`
    这样,命令将会在后台运行,终端仍然可用。但需要注意的是,命令的输出将不会直接显示在终端,而是会输出到标准输出流(stdout)。

    2. 使用nohup命令:nohup命令可以使命令在后台运行,并且不受终端关闭等因素的影响。
    例如:
    “`
    $ nohup command
    “`
    使用nohup命令可以保证即使终端关闭,命令依然会在后台继续运行。nohup会将命令的输出重定向到一个名为nohup.out的文件中,如果希望抑制输出,则可以使用重定向符“>”将输出重定向到/dev/null。
    例如:
    “`
    $ nohup command > /dev/null
    “`

    3. 使用screen或tmux:screen和tmux是两个非常强大的终端复用工具。通过在screen或tmux会话中运行命令,即使终端关闭,也能够保持命令的运行。
    首先,安装screen或tmux:
    “`
    $ sudo apt-get install screen (Ubuntu 系统)
    $ sudo yum install screen (CentOS 系统)
    “`
    然后运行screen或tmux:
    “`
    $ screen
    “`

    “`
    $ tmux
    “`
    接下来,在screen或tmux会话中运行你的命令,并按Ctrl+A+D组合键来分离会话。这样,即使终端关闭,命令仍然会以后台进程的方式运行。

    通过以上方法,你可以轻松地在Linux中执行命令但不等待其结果返回。选择何种方法取决于你对命令的输出和后台运行的需求,以及使用场景的特殊要求。

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

    在Linux操作系统中,如果您希望执行命令并不等待其结果返回,可以使用以下方法:

    1. 使用&符号将命令放入后台执行:在命令的末尾添加&符号,例如:
    “`
    $ command &
    “`
    这样命令会在后台执行,而终端不会等待它完成返回结果。

    2. 使用nohup命令:nohup命令可以使命令在后台运行,即使终端被关闭也不会中断。使用方法如下:
    “`
    $ nohup command &
    “`
    使用这种方法可以确保即使关闭终端,命令仍然继续执行。

    3. 使用disown命令:当在终端中执行一个命令并希望将它从终端中分离时,可以使用disown命令。使用方法如下:
    “`
    $ command
    $ Ctrl + Z
    $ bg
    $ disown
    “`
    首先,通过Ctrl + Z将命令暂停,然后使用bg命令将其移到后台,最后使用disown命令使其与终端分离。

    4. 使用screen命令:screen是一个终端复用程序,可以在单个终端会话中运行多个命令。您可以使用以下命令启动screen:
    “`
    $ screen
    “`
    然后在新的screen会话中执行您的命令。当您想要离开这个会话时,可以使用Ctrl + A + D键组合来分离,并且命令将继续在后台运行。

    5. 使用管道和/dev/null:您可以将命令的输出重定向到/dev/null设备文件中,这样输出就不会显示在终端上。例如:
    “`
    $ command > /dev/null 2>&1
    “`
    这会将命令的标准输出和错误输出都重定向到/dev/null,从而使命令在后台执行而不会产生任何输出。

    通过使用上述方法,您可以在Linux系统中执行命令而无需等待其结果返回。这对于执行长时间运行的任务或处理大量数据的任务非常有用。

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

    在Linux中,可以通过在命令末尾添加`&`来使命令以后台方式运行,即不等待命令执行结果。下面是一种常见的使用方法:

    1. 通过`&`运行命令:可以在命令的末尾直接添加一个`&`符号,表示让该命令在后台运行,如下所示:

    “`shell
    $ command &
    “`

    2. 使用nohup命令:`nohup`命令可以在后台运行命令,并且不会受到用户退出终端的影响,命令的输出将会保存到一个文件中。使用方法如下:

    “`shell
    $ nohup command &
    “`

    3. 使用screen命令:screen是一个终端复用工具,可以在一个终端窗口中创建多个虚拟终端会话。使用方法如下:

    – 首先安装screen,可以使用以下命令进行安装:

    “`shell
    $ apt-get install screen
    “`

    – 启动screen会话,可以使用以下命令:

    “`shell
    $ screen
    “`

    – 在screen会话中执行命令,按下`Ctrl + A`,然后按下`c`键即可创建一个新的窗口,然后在新窗口中执行命令。

    – 按下`Ctrl + A`,然后按下`n`键可以在窗口之间切换。

    – 执行完命令后,可以按下`Ctrl + D`或输入`exit`命令退出screen会话。

    4. 使用nohup和screen的组合方法:
    可以使用nohup和screen命令的组合方式来实现在后台运行命令,而且不受用户退出终端的影响。使用方法如下:

    – 首先安装screen,可以使用以下命令进行安装:

    “`shell
    $ apt-get install screen
    “`

    – 启动screen会话,可以使用以下命令:

    “`shell
    $ screen
    “`

    – 在screen会话中执行nohup命令,如下所示:

    “`shell
    $ nohup command &
    “`

    – 按下`Ctrl + A`,然后按下`d`键可以将screen会话放入后台运行。

    – 执行完命令后,可以通过`screen -r`命令重新进入screen会话,然后使用`exit`命令退出。

    以上是在Linux中让命令以后台方式运行的几种常见方法,可以根据实际需求选择合适的方法。

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

400-800-1024

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

分享本页
返回顶部