Linux nohup命令详解

Linux nohup 命令详解 方案优点缺点适用场景nohup简单易用功能有限简单后台任务可交互,功能强大需要学习成本需要交互的长时间任务systemd专业管理,自动重启配置复杂生产环境服务对于大多数简单场景,nohup仍然是最快捷有效的解决方案,特别是当您只需要临时保持一个进程运行时。掌握好nohup的使用技巧,可以显著提高 Linux 系统管理效率。 阅读详情
导读在工作中,我们很经常跑一个很重要的程序,有时候这个程序需要跑好几个小时,甚至需要几天,这个时候如果我们退出终端,或者网络不好连接中断,那么程序就会被中止。而这个情况肯定不是我们想看到的,我们希望即使终端关闭,程序依然可以在跑。

nohup 命令是英语词组 no hangup 的缩写,意思是不挂断,也就是指程序不退出。这个命令会使程序忽略 HUP 信号,保证程序能够正常进行。HUP 信号有些人可能比较陌生,它是在终端被中止的时候向它所关联的进程所发出的信号,进程收到这个信号后就会中止运行。所以如果你不希望进程被这个信号干掉的话,就可以忽略这个信号。而 nohup 命令做的就是这个事情。

本文我们将详细介绍 nohup 命令的具体用法。

Linux nohup命令详解Linux nohup命令详解

nohup命令基本语法

nohup 命令的基本语法如下:

$ nohup command arguments 
或
$ nohup options 

如果你想要得到更多关于 nohup 的用法介绍,可以查看它的帮助页面:

$ nohup --help 

使用nohup命令启动一个程序

如果你需要运行一个程序,即使对应的 Shell 被退出后依然保持运行,可以这样使用 nohup 运行这个程序:

$ nohup command 

当这个程序进行起来之后,这个程序对应的 log 输出及其错误日志都将被记录在 nohup.out 文件里,这个文件一般位于家目录或者当前目录。

重定向程序的输出

如果我不想把程序的输出保存在家目录或者当前目录,我想保存在我指定的路径,并且自定义文件名,要怎么操作?这时我们就可以使用重定向操作 > 。

比如,我现在有个脚本 myScript.sh 我想把它的输出保存在家目录下的 output 目录下,文件名为 myOutput.txt ,可以这样运行:

$ nohup ./myScript.sh > ~/output/myOutput.txt 

使用nohup命令后台启动一个程序

如果想让程序在后台运行,可以加上 & 符号。但这样运行之后,程序就无影无踪了。想要让程序重新回到终端,可以使用 fg 命令。
Linux nohup命令详解Linux nohup命令详解

这个命令的输出 log 将保存在 nohup.out 文件里,你可以使用 cat 或其它命令查看。第二行里 8699 这个数字代表这个命令对应的进程号,也就是 pid 。我们可以使用 ps 命令来找到这个进程。

使用nohup同时运行多个程序

如果你需要同时跑多个程序,没必要一个个运行,直接使用 && 符号即可。比如,你想同时跑 mkdir ,ping,ls 三个命令,可以这样运行:

$ nohup bash -c 'mkdir files && 
ping -c 1 baidu.com && ls'> output.txt 

Linux nohup命令详解Linux nohup命令详解

终止跑在后台的进程

上面有提到,nohup 命令结合 & 符号可以使进程在后台运行,即使关闭了终端依然不受影响。这时,如果想要终止这个进程,要怎么操作呢?

最简单的当属 kill 命令,相信大家用过很多次了。

$kill -9 PID 

那要如何找到进程对应的 pid 呢?我们可以使用 ps 命令。

$ ps aux | grep myScript.sh 

或者你使用 pgrep 命令也行。
Linux nohup命令详解Linux nohup命令详解
接下来,再使用 kill 命令就可以终止该进程了。

$kill -9 14942 

原文地址:https://www.linuxprobe.com/linux-nohup.html

nohup 命令详细介绍 nohup命令是一个简单而强大的工具,适用于需要在后台运行长时间任务的场景。通过忽略挂起信号,它确保了命令即使在用户退出终端后也能继续执行。用户可以通过重定向输出来控制日志文件的生成,从而更好地管理和监控后台进程。希望以上内容对您有所帮助!在bash中,2>&1 &2>&1和。2>&12代表标准错误输出(stderr)。是重定向操作符。表示后面的数字是一个文件描述符,而不是文件名。1代表标准输出(stdout)。因此,2>&1的意思是将标准错误输出重定向到标准输出。 阅读详情

相关推荐

Linux nohup后台命令基础详解

(一)前言 因为经常使用Xshell进行服务器代码的运行,但是每次到关机后,或者是关掉Xshell连接窗口,在服务器上的命令,操作也就断掉了。这不得不找到了一个Linux命令:nohup (二)基本用法 nohup command [arg … ] [ & ] 拿python test.py 为例子 一般我们运行命令是直接:python test.py,但是在xshel...

徐代龙的技术专栏 874

nohup命令详解

nohup nohup 命令运行由 Command参数和任何相关的 Arg参数指定的命令,忽略所有挂断(SIGHUP)信号。在注销后使用 nohup 命令运行后台中的程序。要运行后台中的 nohup 命令,添加 & ( 表示“and”的符号)到命令的尾部。 nohup 是 no hang up 的缩写,就是不挂断的意思,但没有后台运行,终端不能标准输入。 nohup命令:如果你正在运...

yhc166188的博客 7611

ControlCAN.dll开发适配USBCAN_E/2E_U设备

摘要:本文提供了USBCAN_E/2E_U设备的配置指南:1)安装专用驱动;2)获取最新的ControlCAN.dll文件;3)修改VCI调用顺序,新增VCI_SetReference函数设置波特率;4)使用工具计算波特率配置值,并给出了常见波特率对应的代码参考值(如500K对应0x060007)。配置过程强调使用特定工具计算精确的波特率参数,并提供了相关软件下载链接。

weixin_43969033的博客 390

后端开发从小白到大佬之Linux的命令(一):nohup,详解底层!!!

首先需要找到要关闭的进程的进程ID(PID),可以使用ps命令或者top命令来查看所有正在运行的进程。默认情况下,kill命令发送的是SIGTERM信号,这是一个终止进程的常规信号。命令来运行那些需要较长时间才能完成的任务,或者需要在长时间运行的过程中保持连接的任务,我们java的jar包就是一个很好的选择。命令会列出所有正在运行的进程的信息,包括系统进程和其他用户的进程。默认情况下,killall命令发送的是SIGTERM信号,可以使用-9选项来发送SIGKILL信号,强制终止进程。

tyuiop321的博客 3488

cst使用局部网格加密,手动加密,special设置等方法合理网格布局加速仿真速度

在CST中,计算复杂模型或者阵列的时候往往需要耗费大量仿真时间,除了使用更高性能的电脑或工作站进行仿真,合理对CST的仿真网格进行适当设置也是必不可少的一步。CST中网格设置影响模拟的精度和速度,因此花时间理解网格过程是很重要的。

OVEN_b612的博客 1万+

Frida实战:SSL Pinning绕过技术全解析

本文详细解析了如何使用Frida工具绕过SSL Pinning技术,包括环境搭建、四种实战绕过方案及常见问题排查指南。通过具体代码示例和实战经验,帮助安全研究人员快速掌握SSL Pinning绕过技术,适用于金融类App的安全测试场景。

weixin_42530732的博客 188

Linux:Nohup命令详解

Linux:Nohup命令详解

北凉徐凤年的博客 3346

RISC-V嵌入式开发实战:手把手教你读懂并修改CH32V103的链接脚本(.ld)

本文深入解析RISC-V嵌入式开发中CH32V103链接脚本(.ld)的编写与优化技巧。从内存布局、段分配到实战调试,详细讲解如何解决程序跑飞、变量异常等典型问题,特别针对RISC-V架构的gp寄存器优化、中断向量表处理等特性提供专业指导,帮助开发者充分利用64KB Flash和20KB RAM资源。

weixin_33704234的博客 175

Linux命令之nohup详解

nohup 什么是nohup nohup 全称:no hang up(不挂起)。也就是说,当前交互命令行退出的时候,程序还在运行。 语法 nohup Command [Arg...] [ &] 最后的" &":表示后台运行,不霸占交互命令行 如果不将 nohup 命令的输出重定向,输出将附加到当前目录的 nohup.out 文件中。 如果当前目录的 nohup.out 文件...

weixin_33805557的博客 2149

Visual Studio Code 打开java项目

在 Visual Studio Code 中打开并运行一个 Java 项目之前,你需要确保你已经完成了一些初始设置。

2674

C语言--第三大的数

第三大的数 给定一个非空数组,返回此数组中第三大的数。如果不存在,则返回数组中最大的数. 示例1: 输入: [3, 2, 1] 输出: 1 解释: 第三大的数是 1. 示例2: 输入: [1, 2] 输出: 2 解释: 第三大的数不存在, 所以返回最大的数 2 . ...

loreal8的博客 2132

linux:详解nohup命令

在 UNIX 和类 UNIX 操作系统(如 Linux 和 macOS)中,nohup 意图为后台运行且免疫挂断信号的命令,用于在用户注销(logout)或终端关闭后继续运行相应的进程。

分享前端开发工程师的一些日常生活、前端知识点、职业发展、对一些问题的看法、感悟等等 2120

Shopee App加密算法逆向实战:从抓包到libshpssdk.so的深度解析

本文详细解析了Shopee App加密算法的逆向过程,从网络抓包发现加密参数入手,通过Frida动态Hook定位到Java层关键方法,并深入追踪至Native层的libshpssdk.so核心函数。文章结合实战演示了如何利用Unidbg模拟执行环境进行算法分析与验证,并探讨了核心参数生成逻辑及风控规避要点,为移动安全与逆向工程研究提供了完整的技术路径。

weixin_28347369的博客 527

linux 命令:nohup 详解

nohup 命令的功能是在不挂端的情况下执行命令,默认会输出一个 nohup.out 的文件。

yspg_217的博客 3万+

华为OD机试真题 新系统2026-04-01 Java&Go 实现【勇攀数字高峰】

请你在给定的数字地形图中寻找登山路径,数字代表当前位置的海拔高度,要求从最低海拔出发,不断攀登,最终到达最高山峰。你需要寻找所有满足条件的登山路径。地图已经保证最低海拔和最高山峰都只有一个。

MISAYAONE的博客 620

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

Linux 系统 nohup 命令详解

nohup nohup命令运行由Command参数和任何相关的Arg参数指定的命令,忽略所有挂断(SIGHUP)信号。在注销后使用nohup命令运行后台中的程序。要运行后台中的nohup命令,添加&(表示“and”的符号)到命令的尾部。 nohup是nohangup的缩写,就是不挂断的意思。 nohup命令:如果你正在运行一个进程,而且你觉得在退出帐户时该进程...

Miss520jenny的博客 1612

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

linux命令nohup详解

nohup进程后台执行 用途:LINUX命令用法,不挂断地运行命令。    语法:nohup Command [ Arg ... ] [ & ]    描述:nohup 命令运行由 Command 参数和任何相关的 Arg 参数指定的命令,忽略所有挂断(SIGHUP)信号。在注销后使用 nohup 命令运行后台中的程序。要运行后台中的 nohup 命令,添加 & ( 表示“a

li295214001的专栏 1429

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

nohup命令及其输出文件 linux nohup命令详解

linux nohup命令详解   nohup命令及其输出文件       nohup命令:如果你正在运行一个进程,而且你觉得在退出帐户时该进程还不会结束,那么可以使用nohup命令。该命令可以在你退出帐户/关闭终端之后继续运行相应的进程。nohup就是不挂起的意思( n ohang up)。  一般都是在linux下nohup格式:   www.2cto.com   nohup com

小桥 8372

linux nohup命令详解

linux nohup命令详解   nohup命令及其输出文件       nohup命令:如果你正在运行一个进程,而且你觉得在退出帐户时该进程还不会结束,那么可以使用nohup命令。该命令可以在你退出帐户/关闭终端之后继续运行相应的进程。nohup就是不挂起的意思( n ohang up)。  一般都是在linux下nohup格式:   www.2cto.com   nohup com

大数据训练营 6691
上一篇: 解析如何在Bash中编写函数
下一篇: Linux入门及进阶学习推荐书籍
Listen2You
博客等级 码龄10年 202粉丝 1001原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值