Linux-nohup命令使用方法详解

 更新时间:2024年09月28日 11:11:51   作者:喻师傅  
在Linux环境中,nohup命令用于在用户退出或注销后继续运行命令,当终端关闭时,所有在该终端中运行的进程会收到SIGHUP信号并被终止,但使用nohup可以避免这种情况,本文介绍了nohup的基本用法,感兴趣的朋友一起看看吧

Linux-nohup命令使用方法

今天在终端页面挂着跑任务,被旁边老哥教育了🤣🤣说我这终端一不小心退出,任务就停了,让我用nohup在后台跑~(当时一愣一愣的哈哈🤣🤣🤣)

在此记录一下nohup的使用方法,以后就知道啦~

1. 什么是 nohup?

nohupno hang up别挂电话🤣🤣)用于在用户退出或注销后继续运行命令

通常,当终端关闭时,所有在该终端中运行的进程都会收到 SIGHUP 信号(挂起信号),并被终止。使用 nohup 可以避免这种情况。

2. 基本语法

nohup command [arguments] &
  • command:要执行的命令或程序。
  • arguments:传递给命令的参数(可选)。
  • &:将命令放入后台执行,允许用户继续使用终端。
  • 长时间运行的任务:例如数据处理、备份脚本等,需要在后台运行的任务。
  • 远程会话:当通过 SSH 连接到服务器时,如果你开始了一个长时间的任务,可以使用 nohup 来确保任务不会因网络断开而终止。

后台运行简单命令:

nohup sleep 300 &
  • 后台运行 sleep 命令,持续 300 秒,即使你退出终端,它也会继续执行。 后台运行脚本:
nohup ./my_script.sh &
  • my_script.sh 会在后台运行,并且不会因为退出终端而被中断。 输出重定向:

将输出保存到文件(比如说跑任务时候的实时输出、日志啥的。)

nohup ./my_script.sh > output.log 2>&1 &
  • > output.log 将标准输出重定向到 output.log 文件。
  • 2>&1 将标准错误重定向到标准输出,所有输出(包括错误信息)都会记录在 output.log 中。
  • (好奇怪哈哈哈🤣🤣就这么用吧,我看教我的老哥也是,帮我把任务日志重定向到自定义的一个文件里面,我在里面查到的跟在终端跑的时候的输出是一样的。)

如果不重定向输出,nohup 会将所有输出保存在当前目录的 nohup.out 文件中。如果该文件已经存在,输出将会追加到该文件中。

指定不同的输出文件

也可以直接指定不同的输出和错误文件:

nohup ./my_script.sh > my_output.log 2> my_error.log &
  • 标准输出写入 my_output.log,而错误输出写入 my_error.log。 查看后台运行的进程
jobs

查看系统中所有进程,可以使用 ps 命令:

ps aux | grep sleep
  • grep是过滤哈~
  • 列出所有包含 sleep 的进程。

终止进程

找到进程 ID (PID) 后,可以使用 kill 命令终止它:

首先,找到 PID:

ps aux | grep my_script.sh

然后,使用 kill 命令:

kill <PID>

如果进程没有响应,可以使用 kill -9 <PID> 强制终止。

到此这篇关于Linux-nohup命令使用方法的文章就介绍到这了,更多相关Linux nohup命令使用内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 详解adb shell 常用命令

    详解adb shell 常用命令

    这篇文章主要介绍了详解adb shell 常用命令,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-05-05
  • Linux下的fdisk指令用法场景分析

    Linux下的fdisk指令用法场景分析

    在Linux系统中,对磁盘进行分区是管理和利用磁盘空间的重要任务之一,本篇将以通俗易懂的方式,详细介绍fdisk指令的前世今生、功能、用法和应用场景,帮助读者全面了解fdisk指令,并掌握其在磁盘管理和问题排查方面的应用,需要的朋友可以参考下
    2024-01-01
  • Linux下find和grep常用命令及区别介绍

    Linux下find和grep常用命令及区别介绍

    在使用linux时,经常需要进行文件查找。其中查找的命令主要有find和grep,这两个命令还是有区别的,下面通过本文给大家讲解Linux下find和grep常用命令及区别介绍,需要的的朋友参考下吧
    2017-07-07
  • 自动化构建工具make与Makefile用法示例详解

    自动化构建工具make与Makefile用法示例详解

    make是一个命令工具,是一个解释makefile在指令的命令工具,大多数的IDE都存在这个命令, makefile成为一种在工程方面的编译方法,这篇文章主要介绍了自动化构建工具make与Makefile用法的相关资料,需要的朋友可以参考下
    2026-05-05
  • jenkins 实现shell脚本化定时执行任务的方法

    jenkins 实现shell脚本化定时执行任务的方法

    这篇文章主要介绍了jenkins 实现shell脚本化定时执行任务,解决访问是jenkins构建好之后将jar远程推送到生产服务器,提前退出后台执行服务器远程脚本,脚本通过ngnx提前切走nginx代理auction sleep 1800s,半小时后执行更新重启,具体操作过程跟随小编一起看看吧
    2022-01-01
  • Linux下查看.so和可执行文件是否debug编译的方法(必看)

    Linux下查看.so和可执行文件是否debug编译的方法(必看)

    下面小编就为大家带来一篇Linux下查看.so和可执行文件是否debug编译的方法(必看)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-03-03
  • shell脚本编程之for语句、if语句使用介绍

    shell脚本编程之for语句、if语句使用介绍

    这篇文章主要是介绍了shell脚本编程之for语句、if语句的使用方法,学习shell编程的朋友可以看下
    2013-09-09
  • Shell中函数返回值超出问题

    Shell中函数返回值超出问题

    这篇文章主要介绍了Shell中函数返回值超出问题,shell中通过return返回是有限制的,最大返回255,超过255,则从0开始计算,需要的朋友可以参考下
    2015-05-05
  • Csh的基本语法介绍

    Csh的基本语法介绍

    这篇文章主要介绍了Csh的基本语法,讲解了变量、数组、命令替换、命令行参数、IO重定向和管道等内容,需要的朋友可以参考下
    2014-11-11
  • linux下怎么解压.tar.gz .tar.bz2命令

    linux下怎么解压.tar.gz .tar.bz2命令

    这篇文章主要介绍了linux下解压.tar.gz .tar.bz2命令的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-12-12

最新评论