Linux进程的后台运行
文章目录
- 一. 什么是进程?
- 二. 进程后台运行
在了解三种进程后台运行的方式前,小编觉得有必要先简单讲解一下什么是进程。
PS: 本篇博客技术参考价值不大,只是类似随笔比较水,详细的知识点可以关注一下nohup命令的使用。
一. 什么是进程?
什么是进程?进程就是运行的程序。
例如我们在Windows系统中双击一个图标运行一个软件,其实这就是启动了若干了进程,只不过在Linux中是通过命令来操作程序的运行。
因此我们也可以对程序进行操作,列如运行程序,终止程序,查看程序的运行状态等。
那么我们如何产生1个进程呢?我们通常使用命令,命令对应程序,程序执行后就会产生相应的进程。
我们也可以把进程分为前台运行的进程
和后台运行的进程
,列如在Linux中:
这些都是在前台中运行的进程,会在终端中占用终端的输入或者产生信息。
ls
pwd
sleep 1000
我们可以在命令后面添加一个&符号让进程在后台执行列如:
sleep 1000 &
这样运行的命令是不会占用终端或者在终端中输出信息的,也就是后台运行一个进程,对于每一个进程都有一个固定的pid,那么如何查看进程的pid呢?
这就涉及到了进程信息的查看,我们就需要借助 ps 命令,列如:
# 利用运行进程使用的命令中的关键字查询出进程的 pid
ps -ef | grep <keyword>
# 查看当前用户运行的全部进程
ps -ux
查询出来的信息一般第二列就是进程的pid了
我们也可以通过命令将对应pid的进程杀死:
// 使用 kill 命令来杀死进程
kill -9 <pid>
kill -15 <pid>
9 和 15 这两个数字的含义可以在终端输入 htop,然后按 F9 查看,每个数字对应了一种发送给进程的信号。
15 对应的是 SIGTERM,通知进程结束,不加参数时,如:kill pid 默认使用该信号终止进程。
9 对应的是 SIGKILL,强制终止进程。
所以我们也可以在 htop 界面中发送相应的信号来结束进程。
关于进程的介绍,这里就不过于详细的讲解了,有感兴趣的读者朋友可以找一些相关文章查阅。
二. 进程后台运行
命令开启进程后台运行的方式有三种:
- 第一种方式是在执行的命令后面添加 & 符号
- 第二种是利用 ctrl + z 和 bg 搭配
- 第三种是使用 nohup 的方式后台运行进程(常用)
第一种:
sleep 10086 &
第二种:
sleep 10010
# 按 ctrl + z
# 在终端输入 bg
bg
第三种:
nohup sleep 1111 &
我们也可以使用下面的命令来查看后台运行的进程:
jobs -l
可以根据后台运行的进程编号将对应的进程转到前台来运行,编号可通过 jobs -l 命令查看
// 将 1 号后台运行的进程转到前台运行
fg 1
// 不指定编号,默认将编号最大的进程转到前台运行
fg
值得注意的是
: 使用上文中的方式 1 和方式 2 运行的后台进程会在终端关闭后被杀死,而使用 nohup 运行的后台进程在终端关闭后而主机还在运行的情况下继续运行。
在让进程后台运行时,我们通常需要记录日志,用于了解进程的运行情况,比如运行 jupyter notebook 时,我们通常将日志输入到文件中:
nohup jupyter notebook 1>jupyter.log 2>&1 &
这里的 2 表示的是错误输出,1 表示的是标准输出,标准输出会输出到终端。上述的 2>&1 会将标准错误输出重定向标准输出(终端),1>jupyter.log会将标准输出中的内容重定向到 jupyter.log 文件中,这样进程输出的日志信息就全都记录在 jupyter.log 文件中了,查看 jupyter.log 文件中的内容,就能知道进程的运行状态了。
Linux进程的后台运行相关推荐
- Linux进程在后台运行的几种方法
目录 nohup / setsid / & disown screen 总结 我们经常会碰到这样的问题,用 telnet/ssh 登录了远程的 Linux 服务器,运行了一些耗时较长的任务, ...
- 让Linux进程在后台运行
1. 命令简介 nohup 的作用可以将程序以忽略挂起信号(SIGHUP)的方式运行.常见的用法是和 & 命令一同使用,将命令放置到后台运行,即使终端挂掉,进程会忽略挂起信号,继续运行. 将程 ...
- 怎么让 Linux 进程在后台运行
1.命令简介 nohup 的作用可以将程序以忽略挂起信号(SIGHUP)的方式运行.常见的用法是和 & 命令一同使用,将命令放置到后台运行,即使终端挂掉,进程会忽略挂起信号,继续运行. 将程序 ...
- Linux nohup实现后台运行程序及查看(nohup与)
Linux nohup实现后台运行程序及查看(nohup与&) 更新时间:2019年09月11日 09:28:40 作者:猿的生活 这篇文章主要介绍了Linux nohup实现后台运行程序及查 ...
- linux shell 在后台运行命令
linux shell 在后台运行命令: http://blog.csdn.net/CAIYUNFREEDOM/article/details/6339390 http://blog.sina.com ...
- Linux中vue后台运行
Linux中vue后台运行 只会简单的尝试 新的改变 功能快捷键 合理的创建标题,有助于目录的生成 如何改变文本的样式 插入链接与图片 如何插入一段漂亮的代码片 生成一个适合你的列表 创建一个表格 设 ...
- linux使得python后台运行,linux 下后台运行python脚本
&符号 这两天要在服务器端一直运行一个Python脚本,当然就想到了在命令后面加&符号 $ python /data/python/server.py >python.log & ...
- Linux系统中后台运行java项目jar包指令
Linux系统中后台运行java项目jar包指令 windows环境下后台运行jar包程序: https://blog.csdn.net/qq_36763419/article/details/109 ...
- Linux学习之后台运行进程
前言 有的时候我们希望Linux的命令行能运行一个程序,然后把它放在后台,让其自己运行,尤其是云服务器运行单线程程序,TCP服务器开启一个while(true)循环监听一个端口,这时命令行就死在那等着 ...
最新文章
- 提交表单自动刷新_Web自动化测试:元素的基础操作和浏览器基础操作
- nboot通过DNW下载并运行eboot.nb0
- 迁移和升级windows 2003 R2到windows 2008 SP2
- thinkphp当前php路径,分析thinkphp常见路径用法分析
- 字符串换行截取_textwrap 文本自动换行与填充
- 每日一笑 | 一些关于集合的知识
- 在Java中使用DOM,SAX和StAX解析器解析XML
- 《TensorFlow:实战Google深度学习框架》——5.3 TensorFlow中的变量初始化函数
- 电脑突然卡主动不了了_必看!电脑运行卡或软件卡死无响应,怎么办?
- 1110 Complete Binary Tree (25 分)(搜索)
- 什么是ISO9000质量管理体系认证以及认证流程
- 计算机网络共享无访问权限,Win7局域网访问WIN7共享文件夹提示无访问权限的多种解决方法...
- Excel 常用的九十九个技巧 Office 自学教程快速掌握办公技巧
- 配置其他机器连接Redis
- 常见iOS开发面试题(有10w多访问量的面试题)
- 【FPGA教程案例12】基于vivado核的复数乘法器设计与实现
- 微信小程序中使用ECharts--折线图、柱状图、饼图等
- QUICK PCB抄板教程(无网络编号)
- iPad Pro大猜想:预计秋季与iOS 9同步亮相
- 阿里妈妈 tanx ssp 推广位设置
热门文章
- 中文分词算法之--最大匹配法
- 2020 ICM Weekend 1 Problem E: Drowning in Plastic
- apache和php的安装配置
- PHP孟加拉钢厂_孟加拉国帕德玛大桥合龙
- 单模多模还傻傻分不清楚?关于光模块介绍,看这一篇就够啦!
- SpringCloud 微服务架构开源项目,适合接私活、毕业设计(附源码)
- RPGMAKER游戏引擎基于JavaScript的插件制作(六)——重写方法(三):在场景(scenes)中创建精灵(Sprite)——复制式重写的实例教学
- 项目oms之----阿里巴巴字体图标运用详解 (含:彩色图标svg运用)
- 基于运动学模型的轨迹跟踪控制
- proto2java