Linux系统中使任务后台挂起不停止的命令

在使用远程SSH连接工具时,退出工具时任务也停止,相当于远程连接工具在系统开启了一个Terminal终端,服务也会随着终端的中断而停止。Linux系统也提供了服务基于后台运行的命令,是独立于终端的进程。

nohup

Linux nohup

Linux nohup命令:后台命令脱离终端运行

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

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

语法格式:nohup Command [ Arg … ] [ & ]

参数说明:

  • Command:要执行的命令。

  • Arg:一些参数,可以指定输出文件。

  • &:让命令在后台执行,终端退出后命令仍旧执行。

案例:

如图所示有一个flask的简易web文件

在这里插入图片描述

使用python3 test.py运行项目

在这里插入图片描述
直接在公网访问

在这里插入图片描述
断开xshell工具后就无法访问了

在这里插入图片描述

nohup启动

通过nohup命令后台启动

nohup python3 test.py &

在这里插入图片描述
在这里插入图片描述

不加&会关闭标准输入。

出现该打印时表示启动成功

ignoring input and appending output to 'nohup.out'

在当前目录下也能看到一个nohup.out文件

在这里插入图片描述

ps命令查找进程

ps命令查找到 nohup 运行脚本 PID或者脚本名称。

ps -aux | grep "test.py"

在这里插入图片描述

参数说明:

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

另外也可以使用 ps -def | grep "test.py" 命令来查找。

kill停止进程

找到 PID 后,就可以使用 kill PID 来删除。

kill -9  进程号PID

nohup功能相对较少,只能帮助使进程在后台运行,在实际中,一个Linux会部署多个服务,有时需要观察不同服务的打印终端,nohup就不满足需要了。

jobs查看后台进程

jobs 命令可以用来查看当前终端放入后台的工作。

在这里插入图片描述

jobs [选项]

选项含义
-l(L 的小写)列出进程的 PID 号。
-n只列出上次发出通知后改变了状态的进程。
-p只列出进程的 PID 号。
-r只列出运行中的进程。
-s只列出已停止的进程。

fg 命令恢复后台命令

除了将工作丢到后台去运行,也可以将后台工作拿到前台来执行。fg 命令用于把后台工作恢复到前台执行,该命令的基本格式如下:

fg %工作号

工作号时通过jobs命令查看的,如下:
在这里插入图片描述
[1]中的1就是工作号。

在这里插入图片描述
如果要想中止某个命令,要么把命令恢复到前台,然后正常Ctrl+C退出;要么找到 top 命令的 PID,使用 kill 命令杀死这个进程。

Screen

Screen 是在多个进程间多路复用一个物理终端的全屏窗口管理器。screen 命令允许用户在一个窗口内使用多个终端会话,可以断开连接,也可以重新连接已断开连接的会话,每个会话都可以恢复。

基于screen的特性可以使用screen来实现服务的持久化。具体实现请看之前的文章Linux的screen工具库实现多终端。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/5806.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Python】仅7行代码实现自动化天气报时

文章目录前言一、实现步骤二、请求天气接口1.引入库2.读入数据3.钉钉通知天气预报总结前言 早上出门上班前,我总是忘记查看天气预报,以至于通勤路上下雨来了个措手不及。 回想起来,大部分人早上出门前的行为模式是固定的,那么有…

一个基于stream的EPICS IOC应用程序

本文将介绍如何开发一个基于stream的EPICS IOC应用程序,其将作为一个简单的基于消息的设备(用于EPICS stream练习的设备模拟程序_yuyuyuliang00的博客-CSDN博客中最后一个python程序模拟的设备)的IOC控制程序。 1) 按如下步骤建立这个IOC程序…

vb+access大气污染模型系统

数据模型就是按专业的要求,用数字方式描述自然界的事物或现象以及他们的关系。 我们通过对地区的具体数值和情况的观察,对大气质量状况做出分析,建立一个符合当地情况的大气污染模型,用来测量大气污染浓度,并根据污染…

在公司兢兢业业5年,被新来的自动化测试倒挂了薪资…

去年年中朋友左思右想从工作了 5 年的企业离职,离职原因很简单,待疲了,薪资也没咋涨过,新来的自动化测试钱比 Ta 高一倍。但离职 Ta 还是很忐忑的,在这个公司待得久了,自己会的东西一直是那些,业…

Python3爬虫图片抓取

在上一章中,我们已经学会了如何使用Python3爬虫抓取文字,那么在本章教程中,将通过实例来教大家如何使用Python3爬虫批量抓取图片。注:该网站目前已经更换了图片的请求方式,以下爬虫方法只能作为思路参考,已…

【Linux】进程理解与学习-程序替换

环境:centos7.6,腾讯云服务器Linux文章都放在了专栏:【Linux】欢迎支持订阅 相关文章推荐: 【Linux】冯.诺依曼体系结构与操作系统 【Linux】进程理解与学习Ⅰ-进程概念 【Linux】进程理解与学习Ⅱ-进程状态 【Linux】进程理解与学…

想拿到10k-40k的offer,这些技能必不可少!作为程序员的你了解吗

总结了一份Java架构师的技能树,希望对Java编程的同学有点帮助 Java编程的技术点: ​ 计算机基础 ​ Java高级特性 设计模式 ​ 数据库 分布式系统 ​ 注意:下文主要是我个人的总结方法经验(面试学习和刷题笔记) 01…

aws codedeploy 在ec2实例和autoscaling组上进行蓝绿部署

参考资料 https://docs.amazonaws.cn/codedeploy/latest/userguide/reference-appspec-file-structure-hooks.htmlhttps://docs.amazonaws.cn/zh_cn/codedeploy/latest/userguide/applications.html为 EC2/本地蓝/绿部署创建部署组(控制台) 部署ec2比较…

面试角度看问题:消息队列详解(万字长文,绝对值得一看)

面试角度看问题:消息队列详解前言一、消息队列是什么?二、为什么要使用消息队列?1.解耦2.异步3.削峰三、消息队列有什么缺点?1.系统可用性降低2.系统复杂度提高3.一致性问题四、如何保证消息队列的高可用?1.RabbitMQ 的…

zookeeper

目录 1.软件架构的发展 2.了解zookeeper 2.1概述 2.2zookeeper的应用场景 2.3安装zookeeper 2.4zookeeper客户端命令 3.zookeeper简单操作 3.1zookeeper的数据结构 3.2节点的分类 3.3java代码操作zookeeper节点 3.4zookeeper的watch机制 3.4.1介绍 3.4.2NodeCache…

ERD Online 4.0.11 在线数据库建模、元数据协作平台(免费、私有部署)

ERD Online 是全球第一个开源、免费在线数据建模、元数据管理平台。提供简单易用的元数据设计、关系图设计、SQL查询等功能,辅以版本、导入、导出、数据源、SQL解析、审计、团队协作等功能、方便我们快速、安全的管理数据库中的元数据。 4.0.11 ❝ :memo: fix(erd):…

5亿融资与重磅新品双发布,杉数以智能决策技术变革中国产业运营模式

2023年3月30日,由杉数科技举办的“智能决策重塑增长”2023杉数科技智能决策前沿峰会在北京举行。会上发布了杉数新一轮融资消息,同时,面向零售快消的决策优化产品计划宇宙(Planiverse)与面向工业制造的决策优化产品数弈…

Flink (四) --------- Flink 运行时架构

目录一、系统架构1. 整体构成2. 作业管理器(JobManager)3. 任务管理器(TaskManager)二、作业提交流程1. 高层级抽象视角2. 独立模式(Standalone)3. YARN 集群三、 一些重要概念1. 数据流图(Data…

C的实用笔记36——几种常用的字符串处理API(一)

0、const关键字 1、知识点:const是与存储相关的关键字,用作常量声明,修饰普通变量和指针变量,表示只读。const修饰普通变量:,修饰后变量从可修改的左值变成不可修改的左值 const修饰指针变量:分…

redis源码解析(四)——ziplist

版本:redis - 5.0.4 参考资料:redis设计与实现 文件:src下的ziplist.c ziplist.h 一、基础知识1、压缩列表的各个组成部分及详细说明2、列表节点3、encoding二、连锁更新三、ziplist.hquickList一、基础知识 压缩列表是Redis为了节约内存而开…

陌生人社交软件如何破冰?

据艾媒咨询的数据显示,2020年中国移动社交用户规模已达9.24亿人,预计2022年中国移动社交用户整体突破10亿人。而早在2020年,我国陌生人社交用户规模已经达到了6.49亿人,虽然增速有所放缓,但整体规模还是较为庞大。 艾媒…

操作系统笔记——进程管理

操作系统笔记——进程管理2. 进程管理2.1 进程与线程2.1.1 进程的引入前趋图程序的顺序执行程序的并发执行2.1.2 进程的定义及描述进程的定义进程的特征进程和程序的关系进程与作业的区别进程的组成2.1.3 进程的状态与转换进程的5种基本状态进程的状态的相互转换2.1.4 进程的控…

java常见锁策略分享(包括cas和synchronized的优化)

前言 锁策略学习思维导图: 1.常见锁策略 ① 乐观锁和悲观锁 ● 它们是根据锁冲突的预测,如果预测锁冲突比较小,那就是乐观锁,反之,就是悲观锁. ● 举个例子:高考前夕,我总觉得高考题会很难,然后拼命做各种科目的题,全副武装的去应对高考,而我妈则觉得高考只是人生的一个阶段而…

PCB模块化设计04——USB-Type-C PCB布局布线设计规范

目录PCB模块化设计04——USB-Type-C PCB布局布线设计规范USB Type-C功能介绍信号图示Type-C接口引脚定义USB 2.0差分对电源和接地引脚RX和TX引脚CC1和CC2针脚VCONN引脚SBU1和SBU2针脚USB供电PCB设计布线要求PCB模块化设计04——USB-Type-C PCB布局布线设计规范 USB Type-C US…

STC的官网,是我永远忘不掉的炼丹炉

搞电子的,应该都搞过8051搞8051的,那应该都搞过STC在国内,STC已经成为了8051的代名词http://www.stcmcudata.com/如果你刚开始搞嵌入式,应该学单片机,你学习单片机,就应该学习下8051,学习8051&a…