栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

【linux】nohup 命令和后台运行符 & 外加2>&1的使用

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【linux】nohup 命令和后台运行符 & 外加2>&1的使用

前言:

在终端执行指令时,有时候希望指令挂起,不会因为终端关闭而导致指令中断。这时候需要使用nohup或&指令来实现。

1. nohup

nohup英文全称为no hang up(不挂起),用于在Linux系统不挂断地运行命令,退出终端不会影响程序的运行。

nohup命令,在默认情况下(非重定向时),会输出一个名叫nohup.out的文件到当前目录下,如果当前目录的nohup.out文件不可写,输出重定向到$HOME/nohup.out文件中。

nohup ./run_funnel.sh 

2. &

后台运行符&用于在后台执行命令,使用Ctrl+C程序不会中断,但终端关闭后运行会中断。

./run_funnel.sh &   

3. nohup+&

双剑合璧,Ctrl+C和关闭终端都不会导致程序停止。

nohup ./run_funnel.sh &

4. 查看进程
ps -aux | grep "run_funnel.sh"

参数说明:

a: 显示所有程序u: 以用户为主的格式来显示x: 显示所有程序,不区分终端机

5. kill进程
kill -9 xxxx

参考:知乎回答-孙文奇

如何评价 Linux nohup 命令和后台运行符 & 的使用? - 知乎

6. 2>&1

在Linux系统中0 1 2是一个文件描述符

2>&1:将标准错误输出2重定向到标准输出1中,这样2就合并到1中一起输出。

nohup ./run_funnel.sh > outlog.txt 2>&1 &

> outlog.txt 表示将终端输出保存到txt中
2>&1 表示将错误输出2定向到标注输出1中一起输出
& 后台挂起
nohup指令和&的区别:

父进程不一样,nohup的父进程的id是1。所以退出也能运行。&的父进程是执行的终端进程。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/757356.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号