大数跨境
0
0

怎么让 Linux 进程在后台运行?

怎么让 Linux 进程在后台运行? 终码一生
2021-10-03
2

点击“终码一生”,关注,置顶公众号

每日技术干货,第一时间送达!



1

命令简介


nohup 的作用可以将程序以忽略挂起信号(SIGHUP)的方式运行。常见的用法是和 & 命令一同使用,将命令放置到后台运行,即使终端挂掉,进程会忽略挂起信号,继续运行。


将程序放到后台运行,一般有两种方式:


(1)command &:后台运行,关掉终端会停止运行。

(2)nohup command & :后台运行,关掉终端也会继续运行。


注意:


(1)如果使用nohup执行程序未显示进行标准输出重定向,则标准输出默认重定向当前工作目录的 nohup.out 文件中。如果当前工作目录的 nohup.out 文件不可写,输出重定向到 $HOME/nohup.out 文件中。如果没有文件能创建或打开用于追加,那么 command 参数指定的命令不可调用。另外关注公号“终码一生”,回复关键词“资料”,获取视频教程和最新的面试资料!


(2)如果标准错误未显示重定向,那么标准错误默认重定向到与标准输出相同的文件。


 

2

命令格式


nohup COMMAND [ARGS]
nohup OPTION



3

选项说明


--help
 显示帮助信息并退出
--version
 显示版本信息并退出



4

常用示例


(1)使用nohup 命令提交作业,那么在缺省情况下该作业的所有输出都被重定向到一个名为nohup.out的文件中,除非另外指定了输出文件。


nohup ./test.sh &


(2)标准输出与标准错误输出重定向。


nohup ./test.sh > test.log 2>&1 &


(3)指定输出文件, 输出被重定向到output.txt文件中


[deng@itcast ~]$ nohup bash a.sh &> error.txt
[deng@itcast ~]$


注意:


1)2>&1 标识标准错误输出重定向等同于标准输出重定向,即标准错误输出也重定向到文件test.log;


2)& 命令是命令放在后台执行,需要放在命令的最后面。


来源:https://blog.csdn.net/K346K346/article/details/79985071


PS:防止找不到本篇文章,可以收藏点赞,方便翻阅查找哦。


往期推荐



放弃 MyBatis!我选择 JDBCTemplate!

阿里后端常用的 15 款开发工具,你不试试?

还找激活码?这个神器 永 不 到 期!!

一张900w的数据表,16s执行的SQL优化到300ms?

开源项目 | 真流弊,Spring Boot + Vue 实现音乐网站

MySQL的这个bug,坑了多少人?


【声明】内容源于网络
0
0
终码一生
开发者聚集地。分享Java相关开发技术(JVM,多线程,高并发,性能调优等),开源项目,常见开发问题和前沿科技资讯!
内容 1876
粉丝 0
终码一生 开发者聚集地。分享Java相关开发技术(JVM,多线程,高并发,性能调优等),开源项目,常见开发问题和前沿科技资讯!
总阅读834
粉丝0
内容1.9k