Linux 中的 Nohup 命令Linux 中的 Nohup 命令Linux 中的 Nohup 命令Linux 中的 Nohup 命令
  • 文章
  • 正则表达式
    • 工具
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容
发表 admin at 2025年2月28日
类别
  • 未分类
标签

Linux 中的 Nohup 命令

当退出 Linux 系统的 shell 时,所有正在运行的进程通常都会终止或挂起。那么如果您仍然想保持进程运行甚至退出 shell/终端,您会怎么做?这就是 nohup 命令的用武之地。

Nohup 命令

Nohup,no hang up 的缩写,是 Linux 系统中的一个命令,即使在退出 shell 或终端后仍能保持进程运行。 Nohup 阻止进程或作业接收 SIGHUP(Signal Hang UP)信号。这是在关闭或退出终端时发送到进程的信号。在本指南中,我们将了解 nohup 命令并演示如何使用它。

Nohup 命令语法

Nohup命令语法如下;

nohup command arguments

或者

nohup options

让我们看看命令是如何发挥作用的

检查 Nohup 的版本

您可以首先使用以下语法检查 Nohup 的版本

nohup --version

使用 Nohup 启动进程

如果你想让你的进程/作业保持运行,请在命令前加上 nohup ,如下所示。这些作业仍将继续在 shell 中运行,并且不会在退出 shell 或终端时被杀死。

nohup ./hello.sh 
cat nohup.out
nohup ./hello.sh > output.txt

再次查看文件运行

cat output.txt
nohup ./hello.sh > myoutput.txt >2&1 

使用 Nohup 在后台启动进程

要在后台启动进程,请在命令末尾使用 & 符号。在此示例中,我们正在 ping google.com 并将其发送到后台。

nohup ping google.com &
pgrep -a ping
kill 2565

概括

  1. 所有使用 nohup 命令运行的进程即使在退出 shell 时也会忽略 SIGHUP 信号。
  2. 使用 nohup 命令启动或执行作业后,用户将无法使用标准输入。
  3. 默认情况下,nohup.out 用作 stdout 和 stderr 的默认文件。

©2015-2025 艾丽卡 support@alaica.com