Linux-nohup命令使用方法

Linux-nohup命令使用方法

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

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


1. 什么是 nohup

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

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

2. 基本语法

bash 复制代码
nohup command [arguments] &
  • command:要执行的命令或程序。

  • arguments:传递给命令的参数(可选)。

  • &:将命令放入后台执行,允许用户继续使用终端。

  • 长时间运行的任务:例如数据处理、备份脚本等,需要在后台运行的任务。

  • 远程会话 :当通过 SSH 连接到服务器时,如果你开始了一个长时间的任务,可以使用 nohup 来确保任务不会因网络断开而终止。

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

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

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

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

指定不同的输出文件

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

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

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

bash 复制代码
ps aux | grep sleep
  • grep是过滤哈~
  • 列出所有包含 sleep 的进程。
终止进程

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

  1. 首先,找到 PID:

    bash 复制代码
    ps aux | grep my_script.sh
  2. 然后,使用 kill 命令:

    bash 复制代码
    kill <PID>

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

相关推荐
dllmayday30 分钟前
Linux 上用终端连接 WiFi
linux·服务器·windows
ACP广源盛1392462567340 分钟前
IX8024与科学大模型的碰撞@ACP#筑牢科研 AI 算力高速枢纽分享
运维·服务器·网络·数据库·人工智能·嵌入式硬件·电脑
峥无2 小时前
Linux系统编程基石:静态库·动态库·ELF文件·进程地址空间全景图
linux·运维·服务器
用户2367829801682 小时前
从 chmod 755 说起:Unix 文件权限到底是怎么算的?
linux
码云数智-大飞2 小时前
本地部署大模型:隐私安全与多元优势一站式解读
运维·网络·人工智能
Strugglingler2 小时前
【systemctl 学习总结】
linux·systemd·systemctl·journalctl·unit file
Harvy_没救了3 小时前
【网络部署】 Win11 + VMware CentOS8 + Nginx 文件共享服务 Wiki
运维·网络·nginx
春风有信3 小时前
【2026.05.01】Windows10安装Docker Desktop 4.71.0.0步骤及问题解决
运维·docker·容器
嵌入式×边缘AI:打怪升级日志4 小时前
100ASK-T113 Pro 开发板 Bootloader 完全开发指南
linux·ubuntu·bootloader
lzhdim4 小时前
SQL 入门 12:SQL 视图:创建、修改与可更新视图
java·大数据·服务器·数据库·sql