当前位置: 首页 > news >正文

Linux进程管理命令

一、进程
程序由一条条指令构成,在运行一个程序的时候就是把这些指令从第一条执行到最后一条,而进程是一个正在运行的程序。

比如说,一个main.c文件是不可以直接运行的,对main.c进行编译链接之后生成一个main.exe(在Windows系统中)或main(在Linux系统中),这里的main.exe或者main叫做可执行程序,这个可执行程序是二进制的。所以,其实程序是一个二进制文件,计算机把它运行或者执行起来,它就会产生一个进程。操作系统管理这些进程。

每一个进程都有一个id号为pid,这个pid就是用来唯一标识一个进程的,每个进程的id都是唯一的。

二、进程管理命令

1.ps命令,默认显示与当前终端有关的进程信息

(1)ps
显示的是当前终端中所运行的进程,而不是整个系统所运行的进程:

在这里插入图片描述

从显示的结果可以看出,当前终端中有2个进程,bash打印的内容为:

在这里插入图片描述

ps打印的就是当前终端的进程信息。

【注意】执行3次ps:

在这里插入图片描述
我们可以发现,ps进程的id号逐渐变大,这是因为在第一个ps进程结束以后,它对应的id就会被释放出来,释放出来的id号可以被别的进程再次使用,被复用,但是并不是刚释放出来就被别的进程去使用;当第二次再运行ps时,它的id号会在原有的基础上增加,当id值一直增加到它的最大值以后,才会后头重新寻找没有被使用的id值,也就是被释放出来的id值。

(2)ps -f,显示更多的进程属性信息(全格式),即详细信息。

在这里插入图片描述

(3)ps -e,显示系统中所有的进程信息。我们发现第一个进程的编号是从1开始:

在这里插入图片描述

(4)ps -ef,显示系统中所有的进程的详细信息:

在这里插入图片描述

(5)ps -L,显示进程中的线程ID,LWP就代表线程id:

在这里插入图片描述

2.sleep n,表示睡眠(阻塞)n秒钟。

重新打开一个终端,输入sleep 400,表示睡眠400秒:

在这里插入图片描述

再回到之前打开的终端输入ps,并不能看到刚刚重新打开的终端中的sleep进程:

在这里插入图片描述
输入ps -ef来查看系统中所有进程的详细信息,这时我们就可以看到刚刚在新的终端中运行的sleep进程:

在这里插入图片描述

但是这样很麻烦,我们可以通过管道和过滤来查看,ps -ef | grep "sleep"

在这里插入图片描述

这样就非常方便。

3.Ctrl+c用来结束前台运行进程

结束刚刚sleep 400的进程:

在这里插入图片描述

4.kill命令

(1)kill pid结束或者挂起一个进程,后台和前台的进程都可以通过kill来结束。

先重新打开一个终端,输入sleep 600,表示睡眠600秒:

在这里插入图片描述

然后在另一个终端找到刚刚创建的新的终端中进程sleep的id:

在这里插入图片描述

可以看到整个进程的id是3451。

然后输入kill 3451,表示通过id号来结束整个进程:

在这里插入图片描述

(2)kill -9 pid,强制结束进程

在一个终端中输入sleep 400,表示睡眠400秒,然后按Ctrl+z停止这个进程:

在这里插入图片描述

查看当前终端中的所有进程,发现sleep还在:

在这里插入图片描述

然后通过kill ipd去结束这个进程,发现结束不了:

在这里插入图片描述

这时就需要通过kill -9 pid强制结束这个进程:

在这里插入图片描述
(3)kill -stop pid,挂起一个进程。

5.命令 &,表示这个进程在后台运行

在这里插入图片描述

如果该进程在后台运行,我们在终端就还可以进行操作,比如说上面的ps命令查看进程信息;但是如果该进程在前台运行,那么我们在终端不能进行操作,只有在该进程结束后,才能进行其他操作。

6.pstree命令,以树状图形式显示进程之间的关系

在这里插入图片描述

7.jobs命令,显示当前后台的任务

如下图所示,当前后台没有任务:

在这里插入图片描述

创建一个在后台执行的进程,然后通过jobs来显示当前后台的任务:

在这里插入图片描述

8.前台和后台之间的切换

(1)fg %任务号将后台运行的或挂起的进程挪到前台执行:

在这里插入图片描述

(2)bg %任务号将挂起的进程唤醒到后台执行

先在前台创建一个睡眠400秒的进程:sleep 400,然后通过Ctrl+z停止这个进程:

在这里插入图片描述

然后通过jobs命令显示后台的进程,发现sleep 400这个进程的状态是停止:

在这里插入图片描述

这时,通过bg %任务号,将停止的进程sleep 400唤醒到后台执行:

在这里插入图片描述

9.top指令

查看系统资源使用情况以及进程信息

输入top指令进行查看,输入q退出

在这里插入图片描述

相关文章:

Linux进程管理命令

一、进程 程序由一条条指令构成,在运行一个程序的时候就是把这些指令从第一条执行到最后一条,而进程是一个正在运行的程序。 比如说,一个main.c文件是不可以直接运行的,对main.c进行编译链接之后生成一个main.exe(在W…...

pytest 常用命令参数

-x 用例一旦失败或错误时就立即停止执行 共两条用例,运行第一条报错失败或报错,第二条就不会执行 pytest -vs -x test_pytest_study.py::TestCommon1 共2条用例,当执行到第一条失败时候,第二条不执行 --maxfailnum …...

从安装 Seata 开始的分布式事务之旅 springboot集成seata

从安装 Seata 开始的分布式事务之旅 介绍什么是 Seata? 安装 Seata Server下载 Seata Server 发行版配置Seata解压文件配置Seata的yml文件把配置文件config.txt加载到nacos上修改config.txt文件加载到nacos上 启动Seata服务正常启动查看启动日志打开控制台页面 启动…...

Laravel 使用mix引入本地样式文件 报错 Unable to locate Mix处理

刚下了一个bootstrap样式文件,mix引入了一下,直接报错: Unable to locate Mix file: /css/bootstrap.min.css. (View: D:\phpEnv\www\abc\resources\views\admin\noteAdd.blade.php)原来是需要 npm run dev 启动一下 ✔ Compiled Successfu…...

QT学习笔记-QT安装oracle oci驱动

QT学习笔记-QT安装oracle oci驱动 0、背景1、环境以及条件说明2、编译驱动2.1 下载oracle instant client2.2 编译qt oci驱动2.2.1 修改oci.pro2.2.2 MinGW64构建套件编译2.2.3 MSVC2019_64构建套件编译 3、访问数据库运行成功 0、背景 在使用QT开发应用的过程中,往…...

【React学习】—类的基本知识(五)

【React学习】—类的基本知识&#xff08;五&#xff09; <script>// 创建一个Person类class Person{//构造器方法constructor(name,age){this.namename;this.ageage;}//一般方法speak(){//speak方法一般放在哪里&#xff1f;类的原型上&#xff0c;供实例使用//通过Pers…...

【AI】《动手学-深度学习-PyTorch版》笔记(十六):自定义网络层、保存/加载参数、使用GPU

AI学习目录汇总 1、自定义网络层 自定义网络层很简单,三步即可完成 继承类:nn.Module定义初始化函数:__init__中定义需要初始化的代码定义向前传播函数:forward1.1 不带参数的网络层 1)定义网络层 import torch import torch.nn.functional as F from torch import nn…...

微软杀入Web3:打造基于区块链的AI产品

作者&#xff1a;秦晋 2023年1月&#xff0c;微软向 ChatGPT 创建者 OpenAI 投资 100 亿美元&#xff0c;在AI业界引发格外关注。此举也让微软在AI的战略探索上提前取得有利位置。 2023年3月&#xff0c;微软软件工程师 Albacore 披露微软正在为Edge 浏览器测试内置的非托管加密…...

聊聊51单片机

目录 1.介绍 2.发展 3.应用领域 4.发展前景 1.介绍 51单片机&#xff08;AT89C51&#xff09;是一种常见的8位微控制器&#xff0c;属于Intel MCS-51系列。它是一种低功耗、高性能的单片机&#xff0c;广泛应用于嵌入式系统中。 51单片机具有很多特点和功能&#xff0c;例如…...

Linux yum 命令,Linux apt 命令

目录 Linux yum 命令 yum 语法 yum常用命令 实例 1 实例 2 实例 3 国内 yum 源...

Vue+SpringBoot项目开发:登录页面美化,登录功能实现(三)

写在开始:一个搬砖程序员的随缘记录上一章写了从零开始VueSpringBoot后台管理系统&#xff1a;Vue3TypeScript项目搭建 VueTypeScript的前端项目已经搭建完成了 这一章的内容是引入element-plus和axios实现页面的布局和前后端数据的串联&#xff0c;实现一个登陆的功能&#x…...

2.若依前后端分离版第一个增删查改

1.介绍 若依提供了代码生成功能&#xff0c;单表的CRUD可以直接用若依框架提供的代码生成进行创建。 2.实现 2.1 在数据库创建业务表test_teacher 2.2 生成代码 运行系统&#xff0c;进入菜单[系统工具]-》[代码生成],点击导入按钮&#xff0c;选择需要生成代码的表进行导…...

javaSE_2.2——【方法的介绍】

1.方法的定义 &#xff08;1&#xff09;方法声明的语法规则如下所示&#xff1a; [修饰符] 返回值类型 方法名称([参数列表]){// 方法体 } 方法修饰符&#xff1a;是一种关键字&#xff0c;用来描述方法、类、变量等各种元素的声明&#xff0c;一个程序可以同时拥有多个修饰…...

【02】基础知识:typescript数据类型

1、布尔类型 boolean let flag: boolean false2、数字类型 number let num: number 6 //十进制 let num2: number 0xf00d //十六进制 let num3: number 0b1010 //二进制 let num4: number 0o744 //八进制3、字符串类型 string 用双引号&#xff08;“&#xff09;或单引…...

DIP: NAS(Neural Architecture Search)论文阅读与总结(双份快乐)

文章地址: NAS-DIP: Learning Deep Image Prior with Neural Architecture SearchNeural Architecture Search for Deep Image Prior 参考博客:https://zhuanlan.zhihu.com/p/599390720 文章目录 NAS-DIP: Learning Deep Image Prior with Neural Architecture Search1. 方法…...

AI:02-基于深度学习的动物图像检索算法的研究

文章目录 一、算法原理二、代码实现三、实验结果四、总结深度学习在计算机视觉领域中的应用越来越广泛,其中动物图像检索算法是一个重要的应用场景。本文将介绍一种基于深度学习的动物图像检索算法,并提供相应的代码实现。 一、算法原理 本算法采用卷积神经网络(Convolutio…...

IDEA项目实践——Spring集成mybatis、spring当中的事务

系列文章目录 IDEA项目实践——创建Java项目以及创建Maven项目案例、使用数据库连接池创建项目简介 IDEWA项目实践——mybatis的一些基本原理以及案例 IDEA项目实践——动态SQL、关系映射、注解开发 IDEA项目实践——Spring框架简介&#xff0c;以及IOC注解 IDEA项目实践—…...

6-Ngnix配置反向代理

1.前提 虚拟机能连接外网 仿真http应用需在本虚拟机启用(原因&#xff1a;只有一台虚拟机做测试) http_8080和http_8081要启用&#xff08;http测试应用&#xff09; [rootcent79-2 ~]# ls -l http_* -rwxr-xr-x 1 root root 6391676 Jul 19 13:39 http_8080 -rwxr-xr-x 1 …...

构建 LVS-DR 群集、配置nginx负载均衡。

目录 一、基于 CentOS 7 构建 LVS-DR 群集 1、准备四台虚拟机 2、配置负载调度器&#xff08;192.168.2.130&#xff09; 3、部署共享存储&#xff08;192.168.2.133&#xff09; 4、配置两个Web服务器&#xff08;192.168.2.131、192.168.2.132&#xff09; 测试集群 二…...

【UE4的垃圾回收】

UE4的垃圾回收 1 UObjects及子类1.1 UObjects类包含UObjects成员&#xff08;UPROPERTY&#xff09;1.2 UObjects类包含非UObjects成员 2 非UObject及子类2.1 非UObjects类包含UObjects成员12.2 非UObjects类包含UObjects成员22.3 非UOjbects类包含非UObjects成员 3 UStructs4 …...

深入浅出Asp.Net Core MVC应用开发系列-AspNetCore中的日志记录

ASP.NET Core 是一个跨平台的开源框架&#xff0c;用于在 Windows、macOS 或 Linux 上生成基于云的新式 Web 应用。 ASP.NET Core 中的日志记录 .NET 通过 ILogger API 支持高性能结构化日志记录&#xff0c;以帮助监视应用程序行为和诊断问题。 可以通过配置不同的记录提供程…...

基于大模型的 UI 自动化系统

基于大模型的 UI 自动化系统 下面是一个完整的 Python 系统,利用大模型实现智能 UI 自动化,结合计算机视觉和自然语言处理技术,实现"看屏操作"的能力。 系统架构设计 #mermaid-svg-2gn2GRvh5WCP2ktF {font-family:"trebuchet ms",verdana,arial,sans-…...

AI Agent与Agentic AI:原理、应用、挑战与未来展望

文章目录 一、引言二、AI Agent与Agentic AI的兴起2.1 技术契机与生态成熟2.2 Agent的定义与特征2.3 Agent的发展历程 三、AI Agent的核心技术栈解密3.1 感知模块代码示例&#xff1a;使用Python和OpenCV进行图像识别 3.2 认知与决策模块代码示例&#xff1a;使用OpenAI GPT-3进…...

相机Camera日志实例分析之二:相机Camx【专业模式开启直方图拍照】单帧流程日志详解

【关注我&#xff0c;后续持续新增专题博文&#xff0c;谢谢&#xff01;&#xff01;&#xff01;】 上一篇我们讲了&#xff1a; 这一篇我们开始讲&#xff1a; 目录 一、场景操作步骤 二、日志基础关键字分级如下 三、场景日志如下&#xff1a; 一、场景操作步骤 操作步…...

成都鼎讯硬核科技!雷达目标与干扰模拟器,以卓越性能制胜电磁频谱战

在现代战争中&#xff0c;电磁频谱已成为继陆、海、空、天之后的 “第五维战场”&#xff0c;雷达作为电磁频谱领域的关键装备&#xff0c;其干扰与抗干扰能力的较量&#xff0c;直接影响着战争的胜负走向。由成都鼎讯科技匠心打造的雷达目标与干扰模拟器&#xff0c;凭借数字射…...

比较数据迁移后MySQL数据库和OceanBase数据仓库中的表

设计一个MySQL数据库和OceanBase数据仓库的表数据比较的详细程序流程,两张表是相同的结构,都有整型主键id字段,需要每次从数据库分批取得2000条数据,用于比较,比较操作的同时可以再取2000条数据,等上一次比较完成之后,开始比较,直到比较完所有的数据。比较操作需要比较…...

自然语言处理——文本分类

文本分类 传统机器学习方法文本表示向量空间模型 特征选择文档频率互信息信息增益&#xff08;IG&#xff09; 分类器设计贝叶斯理论&#xff1a;线性判别函数 文本分类性能评估P-R曲线ROC曲线 将文本文档或句子分类为预定义的类或类别&#xff0c; 有单标签多类别文本分类和多…...

绕过 Xcode?使用 Appuploader和主流工具实现 iOS 上架自动化

iOS 应用的发布流程一直是开发链路中最“苹果味”的环节&#xff1a;强依赖 Xcode、必须使用 macOS、各种证书和描述文件配置……对很多跨平台开发者来说&#xff0c;这一套流程并不友好。 特别是当你的项目主要在 Windows 或 Linux 下开发&#xff08;例如 Flutter、React Na…...

OPENCV图形计算面积、弧长API讲解(1)

一.OPENCV图形面积、弧长计算的API介绍 之前我们已经把图形轮廓的检测、画框等功能讲解了一遍。那今天我们主要结合轮廓检测的API去计算图形的面积&#xff0c;这些面积可以是矩形、圆形等等。图形面积计算和弧长计算常用于车辆识别、桥梁识别等重要功能&#xff0c;常用的API…...

Linux入门课的思维导图

耗时两周&#xff0c;终于把慕课网上的Linux的基础入门课实操、总结完了&#xff01; 第一次以Blog的形式做学习记录&#xff0c;过程很有意思&#xff0c;但也很耗时。 课程时长5h&#xff0c;涉及到很多专有名词&#xff0c;要去逐个查找&#xff0c;以前接触过的概念因为时…...