Linux 中的 Nohup 命令及示例Linux 中的 Nohup 命令及示例Linux 中的 Nohup 命令及示例Linux 中的 Nohup 命令及示例
  • 业务
  • 目标
  • 支持
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容

Linux 中的 Nohup 命令及示例

发表 admin at 2025年2月28日
类别
  • 未分类
标签

Linux 中的 nohup 命令用于告诉进程忽略它收到的任何 SIGHUP(挂断)信号。每当当前终端关闭时,SIGHUP 信号就会发送到后台作业。因此,我们可以在后台运行一个作业,关闭终端,但仍然看到它在后台运行。

在本教程中,您将通过示例学习如何在 Linux 中使用 nohup 命令。请按照以下步骤了解可与此命令一起使用的各种选项。

在本教程中您将学习:

  • 如何在 Linux 上使用 nohup 命令

常用选项

从终端启动的每个进程都作为执行该进程的子进程绑定到 shell。当父进程被终止时,子进程也会被终止。

当用户需要远程运行进程并让进程在注销后运行时,这不是特别期望的行为。因此,存在 nohup 命令。 Linux 中的 nohup 命令确保进程不与任何特定的 shell 绑定,因此用户可以通过注销来终止 shell 进程,并且使用 nohup 执行的进程将被保持活力。

查看下面的示例,可以在短时间内掌握 nohup Linux 命令。

Linux 中的 nohup 命令示例

  1. 要使用nohup命令,只需像平常一样运行命令,但将nohup命令放在它的前面。以下是我们将睡眠命令置于后台的示例。

    
    $ nohup sleep 10000 &
    [1] 1908
    nohup: ignoring input and appending output to 'nohup.out'
    

    我们关闭了终端并重新打开它,然后运行了以下命令,这表明 sleep 命令仍在运行,这要归功于 nohup。

    
    $ ps aux | grep sleep
    linuxco+    1908  0.0  0.0   8084   524 ?        S    13:05   0:00 sleep 10000
    

    请记住,您可以使用 fg 命令将后台作业带到前台。

    
    $ fg
    
  2. 默认情况下,输出重定向到 nohup.out 文本文件。如果您想将输出重定向到其他文件,只需在命令中指定文件名即可。

    
    $ nohup some_script.sh > output.txt
    
  3. 要使用 nohup 运行多个命令,请使用 bash 命令,然后使用要运行的各种命令。

    
    $ nohup bash -c 'who && uptime'
    

注意
您始终可以使用 man 命令来阅读有关 nohup 命令及其官方文档的更多信息。单击上一个链接可查看如何打开 Linux 系统上任何命令的手册页。

结束语

在本教程中,我们了解了 Linux 上的 nohup 命令。 nohup 命令是一个非常简单的命令,用于通过忽略发送到命令的挂断信号来保持命令运行,即使终端或 Bash shell 已关闭。通常,这还与 & 符号 & 结合在一起,以便继续在后台运行某些命令或脚本。

©2015-2025 Norria support@norria.com