linux杀死进程命令代码「必看:linux命令kill结束进程」

大家好,很高兴又和你见面了,感谢你能经常过来支持杨先贵,这次我们就来聊聊linux杀死进程命令代码,linux命令kill结束进程,还有干货进程,命令,优先级等等各种精品,这些其实都是一些必备知识,只是有些时候我们没有遇到就没有去了解而已!

普通人的视角,进程就是正在运行着的程序。

从程序员的视角来看,认知要复杂得多。进程是程序正在运行的一个实例。它由程序指令,和从文件、其它程序中读取的数据或系统用户的输入组成。它也是应用层运行、占据着内存、与内核时常交互的动态运行实体。

进程是由内核定义的抽象的实体,内核为进程分配用来执行程序的各项系统资源。

从内核 的层面来看,进程由用户内存空间和一系列内核数据结构组成。其中,用户内存空间包含了程序代码和代码使用的变量,内核数据结构用于维护进程的状态信息。这些记录在内核数据结构的信息有:进程标识号IDs、虚拟内存表、打开文件描述符表、信号传递及处理的相关信息、进程资源使用和限制、当前工作目录、环境变量、命令行等等大量的相关信息。

1 进程的类型

Linux 中的进程主要分两种类型:

  • 前台进程

这个也称为交互式进程 – 这些进程由终端或图形界面启动,响应用户操作。也就是说,需要用户来启动这样的进程。虽然它们部分可以设为开机启动,但它们不是作为Linux操作系统功能/服务的一部分去自动启动的。

  • 后台进程

也称为非交互式/自动进程, 这些进程没有连接到终端,它们不需要任何用户输入。这些进程以系统级服务最多。

要提一下,在Linux中还有一个很重要的进程,这是守护进程deamon。其实这种deamon进属于程后台进程的特殊类型,它们在系统启动时启动,并作为服务一直运行;它们不会死亡。它们自发地作为系统任务启动(作为服务运行)。但是,它们能被用户通过 init 进程控制。

2 linux上进程的4种状态

1. 运行Running,系统中的当前进程,或者准备运行(等待分配 CPU 单元)。

2 等待Waiting,进程正在等待某个事件的发生或者系统资源

内核也会区分两种不同类型的等待进程。一种是可中断等待进程(interruptible waiting processes,这种是可以被信号中断的,另一种就是不可中断等待进程(uninterruptible waiting processes)正在等待硬件条件,不能被任何事件/信号中断。

3. 停止Stopped,进程已经被停止了,通常是由于收到了一个信号,比如SIGSTOP, SIGSTP, SIGTIN, SIGTOU信号后停止运行。正在调试的进程一般都处于这个状态。

4. Zombie僵死,进程已终止, 但是进程表process table中仍然有它的条目,进程描述符尚在, 直到父进程调用wait4()系统调用后释放。

Linuxt每日命令005-进程原理、查看、管理

3 Linux 如何识别进程?

如果你没名字,怎么让别人叫你?同理,事物都是相通的,进程若无标志,Linux系统如何识别?

Linux 是一个多用户、多进程的系统,不同的用户能系统上运行各种各样的程序,而且同一程序有可能运行多个进程。比如,多人可登录到你的Linux系统,启用终端tty,你个人也可以启动多个tty。内核必须唯一标识程序运行的每个实例。

程序由它的进程 ID(PID)和它父进程的进程 ID(PPID)识别的,所以进程可分为父进程和子进程。

  • 父进程 – 这些是在运行时创建其它进程的进程。
  • 子进程 – 这些是在运行时由其它进程创建的进程。

查找进程 ID

可以用 pidof 命令查找某个进程的进程 ID,比如Linux上所有进程的老祖宗init 进程的pid都是1:

$ pidof init
1    

如果你用一个程序打开了多个实例,比如chrome打开了多个网页,pid的操作画风是这样的:

$pidof chrome
8885 7610 7588 6429 5100 5085 4547 4382 4355 4307 3598 3580 3559
3546 3514 3488 3453 3447 3413 3387 3367 3359 3355 3338 3302 3286
3270 3237 3224 3158 2874 2861 2833 2806 2677 2565 2553 2550 2528 
2524 2523 2512

有两个shell命令,可以找当前 shell 的进程 ID 以及它父进程的进程 ID。

$echo $PPID
2758  父进程ID
$ echo $  
8518  当SHELL进程D

4 后台任务

从终端启动一个进程,在命令的最后使用&符号做参数,该进程就被立即送进后台。比如下面的命令系列:

Linuxt每日命令005-进程原理、查看、管理

也可以按Ctrl + Z 暂停执行一个程序,并把它发送到后台(按Ctrl+Z,这样当前终端会给进程发送 SIGSTOP 信号),从而暂停它的执行;它就会变为空闲进程。

Linuxt每日命令005-进程原理、查看、管理

要在后台继续运行上面被暂停的命令,使用 bg 命令。接上面的例子。

Linuxt每日命令005-进程原理、查看、管理

要把后台进程发送到前台,使用 fg 命令以及任务的 ID,类似:

Linuxt每日命令005-进程原理、查看、管理

5 在 Linux 中用shell命令查看活跃进程

ps、top,查看进程

ps 和 top 命令是两个最为常用的进程查看命令。这个命令的功能都很强大。熟悉这两个命令的常见用法,是在Linux中进行日常操作管理的基础。

显示进程信息,包括无终端的(x)和针对用户(u)的进程:如USER, PID, %CPU, %MEM等

ps -aux

按内存资源的使用量对进程进行排序

ps -aux | sort -rnk 4

按 CPU 资源的使用量对进程进行排序

ps -aux | sort -nk 3

按UID、PID、PPID、C、STIME、TTY、TIME、CMD

ps -ef

当然,上面的还可以用grep来过滤。

ps -ef | grep tty

top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。top显示进程的数据包括 PID、进程属主、优先级、%CPU、%memory等。可以使用这些显示数据指示出资源使用量。

Linuxt每日命令005-进程原理、查看、管理

pgrep命令

这个命令扫描当前运行的进程,然后按照命令匹配条件列出匹配结果到标准输出。对于通过名字检索进程号是很有用。

Linuxt每日命令005-进程原理、查看、管理

使用参数”-o“,当匹配多个进程时,显示进程号最小的那个。参数”-n“则相反,显示进程号最大的那个。

~$ pgrep -l sh 显示结果如上图所示
~$ pgrep -l -o sh
157 zswap-shrink
~$ pgrep -l -n sh
17341 gnome-screensho

pgrep支持正则表达式条件,通常会与kill命令联用,在指定条件下杀死问题进程。

pstree显示进程树

pstrees以树状图来展示进程之间的关系,可以直观的查看进程父子关系。执行时最好带“-g”参数,这样可以显示进程的PID号。

Linuxt每日命令005-进程原理、查看、管理

htop

top只能显示系统进程状况,但它不能与用户交互。一个可以交互的是htop,这个不是系统自带的,需要“sudo apt install htop”去安装。htop通过文字图形化地显示每一个进程的CPU和内存使用量、swap使用量。使用上下光标键选择进程,F7和F8改变优先级,F9杀死进程。

Linuxt每日命令005-进程原理、查看、管理

top与htop运行时,都可以按q键退出。

6 在 Linux 中用shell命令干预跃进程

kill、killall 杀死进程

kill 

kill命令用于发送信号来结束进程,如果上面的命令不能杀死进程,那么带“-9”参数试试。

kill -9 

不知道进程PID,或者想用名字杀死进程时候,用killall命令。

killall -9 - 杀死所有同名进程

使用kill或killall命令前一定要小心,因为进程的内部操作有可能没有完成,可能正在写入文件,你这样咔嚓一下就给杀掉了,进程没来得及清理现场就game over了,有可能带来很大风险。

htop杀死进程

因为系统进程实在太多了,在htop中如果想杀死某个进程,最好先F3查询,然后再按F9杀死。

nice、renice命令

在用top、htop显示进程时,有一列是NI,nice value,表示进程的优先级。进程优先级值的范围从-20到19。值越低,优先级越高。提高一个进程的优先级,内核会分配更多CPU时间片给这个进程。默认情况下,进程以0的优先级启动。

通过nice命令的帮助,用户可以设置和改变进程的优先级。当然,没有root权限,我们不可能达到这一目的。

sudo nice --3 kolourpaint  “kolourpaint”是一个类似于windows上的画图的工具软件

Linuxt每日命令005-进程原理、查看、管理

然后就可以看到优先级为-3的kolourpaint进程。

renice这个命令可以改变正在运行的进程优先值。注意,用户只能改变属于他们自己的进程的优先值。

命令“renice -n -p PID” 改变指定进程的优先值,接上例,执行

$ sudo renice -n 6 -p 16217
16217 (process ID) 旧优先级为 -3,新优先级为 6

用htop查看,系统已经运行的kolourpaint进程NI值已经由-3变成了6。

Linuxt每日命令005-进程原理、查看、管理

7 其它一些与进程相关的命令

w命令。是的这个命令就是一个“w”。用来查看登录者的信息及他们的行为。

提供当前登录的用户及其正在执行的进程的信息。显示信息头包含信息,如当前时间、系统运行时长、登录用户总数、过去的1,5,15分钟内的负载均衡数

who命令,查看登录服务器的用户信息

whoami命令,显示自己在系统中的用户名

logname命令,可以显示自己初次登录到系统中的用户名

tty命令,来查看所连接的设备或终端

last命令,查看最近1个月用户登录服务器的情况

8 进程资源限制

ulimit命令,用来查看进程在系统上的资源限制。“ulimit -a“显示当前用户关联的资源限制。

Linuxt每日命令005-进程原理、查看、管理

该命令用于控制系统资源在shell和进程上的分配量。对于一般人员没有啥价值,反正你也不会要求太多的资源。但对系统管理员来说可是不一样,真正的大系统,资源管理量巨大。这个命令可以管理员,管理重度使用和存在性能问题的系统。限制资源大小,确保重要进程持续运行,调整其他进程不会占用过多资源。

Linux关于进程的命令非常丰富,且很多命令参数众多,功能强大,并且多个命令可以用管道、重定向等方式来组合实用。这里也只能是一个简介而已。

上面就是文章的所有内容,希望朋友们看了能起到一定的帮助作用,linux杀死进程命令代码「必看:linux命令kill结束进程」这篇文章让你学习到一些知识的话,那就帮忙分享给你朋友吧!

本文发布者:万事通,不代表寂寞网立场,转载请注明出处:https://www.jimowang.com/p/25677.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 jimowangmail@126.com 举报,一经查实,本站将立刻删除。

(0)
上一篇 2022年12月29日 09:11
下一篇 2022年12月29日 09:13

相关推荐

  • 爷爷自在茶武汉有分店吗 详细介绍:爷爷自在茶有几家

    各位小伙伴们,大家好啊,今天树骏想和你们聊聊爷爷自在茶武汉有分店吗,爷爷自在茶有几家这个话题,还有关于爷爷,分店,胡萝卜,橙子,果肉等等一系列实用的干货内容,如果你想要成为这个领域的专家,那么你需要不断学习和总结,这篇文章就是一个好的开始。 爷爷自在茶作为肯德基旗下的,自上线以来就深受大家的喜爱,但由于时下该品牌还未普及开来,所以大家在想着购买的时候纷纷好奇…

    2023年5月1日
  • 数学里的商是什么意思「推荐数学里的是什么意思,是乘法吗」

    哈喽,小伙伴们大家好,今天许秋湘废话就不多说了,直接上干货,标题:数学里的商是什么意思,数学里的-是什么意思,是乘法吗-,还有乘号,符号,数学,意思,密码等各种干货文章,思路决定出路,确实,这个真的很重要,希望能帮到你! 数学里的*是乘号的意思,例如:1*2=2。有时计算机里没有“x”这个符号,就用“*”来代替乘号,所以在在数学中看到“*\”,就…

    2023年3月14日
  • 美国真实手机号码大全「最新教你如何拥有美国电话号码」

    小伙伴们哈喽,这次其他的孙金福就不说了,主要就是来讲讲美国真实手机号码大全,教你如何拥有美国电话号码,以及手机号码,电话号码,大全的相关内容干货,其他的废话在这里我也不说了,我们直接来进入正题吧! Google Voice简称GV,是谷歌提供的电话服务,用来整合我们生活中众多号码,如家庭电话、手机、办公室号码。 也就是说只要将你众多的号码绑定你的Google…

    2022年12月28日 自媒体
  • 城市摩托车品牌大全排行榜「最新十大名牌国产跨骑式摩托车?」

    小伙伴们你们好,许琰珺很高兴又和各位见面了,今天主要来讲讲城市摩托车品牌大全排行榜(十大名牌国产跨骑式摩托车?),还有关于摩托车,发动机,售价等等各种相关干货,其实这个内容对于新手来说还是挺重要的,因为涉及面很大。如果你认真读了,一定会有所收获! 排行榜123网依托全网大数据,根据品牌评价以及销量评选出了2021年摩托车十大品牌排行榜,前十名分别是铃木/SU…

    自媒体 2022年12月13日
  • 世界灵异事件「最新世间十大真实灵异事件至今无解」

    小伙伴们大家好,今天褚益民讲的文章是世界灵异事件,世间十大真实灵异事件至今无解,还有关于事件,灵异,存在的一些干货,这些其实都是一些必备知识,只是有些时候我们没有遇到就没有去了解而已! 灵异事件对于一些人来说是不相信的,只是一些人瞎编的。但世界上发生的有些事情,虽然原因无人能解,但却是真实存在的。下面是世界上的十大灵异事件,大家来看看有多么离奇,难以相信。 …

    2022年12月31日 自媒体
  • 如何用ps软件还原图片遮挡部分「新手必看:用图片遮挡的图怎么还原」

    很高兴又和小伙伴们见面了,这次钱恒苏主要整理了一些关于如何用ps软件还原图片遮挡部分,用图片遮挡的图怎么还原的事情,以及遮挡,图片,软件,部分,照片的相关内容干货,这些其实都是一些必备知识,只是有些时候我们没有遇到就没有去了解而已! 用PS软件去除遮挡物还原照片 可以使用Photoshop(PS)软件去除遮挡物还原照片。演示使用的版本是CS6,PS软件的其他…

    2023年3月9日 自媒体