Ubuntu nohup命令详解(如何使用nohup忽略挂起并在后台运行程序)

来源:这里教程网 时间:2026-03-28 19:50:32 作者:

在使用 Ubuntu 或其他 Linux 系统时,我们经常需要让某个程序在关闭终端后依然继续运行。这时候,nohup 命令就派上用场了。本文将手把手教你如何使用 Ubuntu nohup命令 来实现忽略挂起运行,即使关闭 SSH 连接或终端窗口,程序也能持续在后台运行。

什么是 nohup?

nohup 是 “no hang up” 的缩写,意思是“不挂起”。它可以让程序忽略 SIGHUP 信号(即终端断开连接时发送的挂起信号),从而在用户退出终端后继续运行。

基本语法

使用 nohup 的基本命令格式如下:

nohup COMMAND [ARGS] & COMMAND:你要运行的程序或脚本 ARGS:可选参数 &:表示将任务放到后台运行

实战示例:使用 nohup 运行 Python 脚本

假设你有一个名为 my_script.py 的 Python 脚本,你想让它在后台持续运行,即使你关闭了终端也不受影响。

执行以下命令:

nohup python3 my_script.py > output.log 2>&1 &

命令解释:

nohup python3 my_script.py:使用 nohup 运行脚本 > output.log:将标准输出重定向到
output.log
文件 2>&1:将错误输出也重定向到标准输出(即同样写入
output.log
&:放入后台运行

查看和管理后台任务

运行 nohup 后,系统会返回一个进程 ID(PID)。你可以使用以下命令查看和管理这些后台任务:

# 查看所有包含 my_script 的进程ps aux | grep my_script.py# 根据 PID 终止进程(假设 PID 是 12345)kill 12345# 强制终止进程kill -9 12345

常见问题解答

Q:为什么 nohup 默认生成 nohup.out 文件?
A:如果你没有指定输出文件,

nohup
会自动将输出写入当前目录下的
nohup.out
文件。

Q:nohup 和 & 有什么区别?
A:

&
只是把任务放到后台运行,但终端关闭后任务仍会被终止;而
nohup
能让任务忽略挂起信号,配合
&
才能真正实现“关闭终端后继续运行”。

总结

通过本文,你应该已经掌握了如何使用 Ubuntu nohup命令 来实现Linux后台运行程序,并理解了如何配置输出日志、查看和管理 Ubuntu后台任务。无论你是部署 Web 服务、运行数据处理脚本,还是执行长时间任务,

nohup
都是一个非常实用的工具。

记住:合理使用

nohup
+ 重定向 +
&
,就能轻松实现“断开连接也不怕”的稳定后台运行!

相关推荐

热文推荐