Linux处理进程和终止进程的技巧

1。在Linux命令平台输入1-2个字符并按Tab按钮将自动完成回件(前提是要有这个东西,例如,在安装Tomcat的前提下输入Tomcat,以便制表)。



2。ps命令用于查看当前正在运行的进程。



grep搜索



例如:ps -ef grep java |



这表明,在所有过程中的过程信息是java命令



ps aux grep java |



-显示所有状态



PS



3。终止命令用于终止进程。



例如,杀死- 9 { } }



- 9表示强制过程立即停止。



一般来说,进程PID是用ps来查看的,并且进程是用终止命令终止的。



关于这两件事的在线报道



-----------------------------------------------------------------------------------



PS



-----------------------------------------------------------------------------------



1。PS简介



ps命令是最基本的条件,相当强的对应进程视图命令。该命令可以确定哪些进程正在运行和运行状态,进程是否完成,没有严格的过程,这过程使用了太多的资源。大部门的信息都是通过执行命令得到的。



2。ps命令及其参数



ps命令是最常用的,或者用于监视后台进程中的工作情况,因为后台进程是屏幕键盘的标准输入/输出。



它已经准备好进行通信,因此,如果需要检测它,可以使用ps命令。



命令语法如下所示:



选项}



e显示所有进程、环境变量



- F全格式



h不显示标题



-长格式



-宽输出



a显示终端的所有进程,包括其他用户接地过程。



r只显示运行过程



x没有显示终端过程的控制。



O { + | - } { | K1,K2 - } {,hellip;按键K1,根据指定的快捷列表短K2显示过程多排序。



对于不同格式的ps,有默认顺序指定。这些默认订单可以由用户覆盖。在这里,字符是可选的;;字符是指向指定键的方向。



它只是列出进程标识符,并用逗号分隔。流程列表必须遵循命令行参数的最后一个选项。中间没有空间插入。例如,PS f1,4,5 ..



以下是长命令行选项,所有这些都使用开始选项:



——排序x { + | - } { {关键的关键,| - } {,hellip;从排序键段选字母键。Ldquo;+ 字符是可选的,因为默认的方向是上升或根据数字字典顺序。例如:PS jax -排序= UID,- PPID,PID。



-帮助显示帮助信息。



-版本显示命令的版本信息。



排序选项在前面的选项中提到。接下来,我们需要进一步说明排序键。需要注意的是,排序中的位置值是ps应用程序的内部值,而不仅仅是某些输出格式的伪值。排序键的列表在表4-3所示。



表4-3排序关键字列表



C



cmd



执行简单的名字



C



CmdLine



完整的命令行



F



旗帜



长模式的标志



G



PGRP



进程组ID



G



tpgid



Control the TTY process group ID



J



cutime



累计用户时间



J



cstime



累积的系统时间



K



联合时代



用户的时间



K



许飞



系统时间



M



min_flt



错误的次要页面数



M



maj_flt



关键页数错误



n



cmin_flt



累积小页错误



n



cmaj_flt



累积密钥页错误



o



会话



对话ID



P



PID



进程ID



P



PPID



父进程ID



R



RSS



居住面积



R



居民



居民页



S



大小



内存大小(1000字节)



S



分享



共享页面的个数



T



TTY



TTY二次设备号



T



start_time



过程的开始时间



u



UID



UID



u



用户



用户名



v



vsize



虚拟内存总数(字节)



Y



优先



内核调度优先级









三.正则使用ps命令参数



三个最常用的参数是u、a和x。下面的示例将用于说明特定用法。



{示例20 }在根目录中作为系统登录以查看当前进程状态



PS美元



PID tty命令



5800 ttyp0 00:00:00狂欢



5835 PS ttyp0 00:00:00



你可以看到,显示的项目分为四项:PID(进程ID),TTY(终端名称),和时间(流程执行时间)。



命令(从流程的命令行输入)。



您可以使用U选项查看流程所有者和其他一些详细信息,如下所示:



PS你美元



用户控制CPU为MEM USZ RSS TTY STAT命令启动时间



测试58000 0.418921040的nov27 ttyp0凌晨狂欢



试验58360 0.32528856 ttyp0 R nov27 0:00 PS U



有一条线在前击过程中,意味着进程是用户登录shell,所以对于一个登录用户只有一个短的水平行进程。% CPU,% MEM也可以看到两个选项,前者是指占用CPU时间和总时间百分比的过程;后者指的是进程。总内存和内存百分比。



在这种情况下,我们看到了控制终端的所有过程。当然,对于那些没有控制终端的进程,我们没有观察到它们。所以我们需要使用X选项。我们可以用x选项来观察所有的过程。



-----------------------------------------------------------------------------------







-----------------------------------------------------------------------------------



作为一个结果的责任,你不得不费力地阅读晦涩难懂的Linux应用程序,是困扰你的描述。然后,你将运行指令和编辑文件。运行一切,生活是美好的。但是,你知道,好时光不会永远持续下去。当你遇到一个可怕的发过程sighup良好的时间结束了。



是什么;进程(启动信号)你怎么寄就像你送给爱人的一束花。但可以肯定的是,这不是一个命令行指令,但你仍然尝试键入它。当然,那是没有结果的。然后,你检查一下键盘。哦,没有进程的关键。所以你重新阅读应用的参考指南,看看下面的:



当挂断(流程)信号的接收,sshd程序会重新读取配置文件。发送SIGHUP信号通过执行命令和选项在启动执行程序,如 / usr / sbin / sshd。



哦,就是这样。



程序员和用户



Linux程序的在线参考指南通常会满足最终用户的需要和高级程序员的需要,因此,有些解释很难理解,但不要担心,现在我们必须揭开掩盖混乱内容的神秘面纱。



信号与过程控制



这个问题主要在信号和过程控制的范畴内,对于我们的系统管理员和普通用户来说,我们主要关心的是启动、停止和重启服务,停止失控的进程和挂起的进程,尽可能地运行,而不中断系统的运行。



操作系统和不同的命令shell在信号处理的方式上是不同的。我们只介绍了Linux操作系统和。



信号是用来守护和交流的过程。任何活动的任务是一个过程,和一个守护进程是一个后台服务等待某种事件或按计划完成任务的反应。一个程序必须有一个信号处理器内置它捕获和响应信号的Linux中的信号。参考指南解释了各种不同的信号,这些信号的使用,信号由发行;kill命令,杀死我的命令可以显示一个可用的信号和数字。



所有守护进程和进程有一个进程ID(PID),如用PS名称显示是什么:



ps aux美元



用户控制CPU为MEM TTY STAT命令



root 10 0.1 init init { 2 }



10577830 0.2 SS / usr /斌/ dbus的守护--系统



哈尔77960 0.7 SS / usr / sbin /哈尔德



后缀79570 0.2的QMgr·L·T FIFO U C



Nagios 83710 0.2 SNS / usr / sbin / / / Nagios Nagios等 / nagios.cfg



这个输出是简化。你可以看到系统中的多行和列。如果一些消耗你所有的CPU或内存,你可以在%和% CPU输出MEM列找到他们更快的方式找到一个失控的过程是用上面的命令,因为根据默认设置,使用最多的CPU资源的过程是在顶部显示。我们可以用yes命令来:



是的,卡拉是awesum美元



这个命令将多次在高速显示卡拉德awesum直到你停止运行。这将使你的CPU使用率达到警戒线。



合上







PID用户Pr-Ni VIRT RES SHR的CPU时间为MEM +命令



12144卡拉25031592 17m 13m R 93.4 3.5 50.26 0: konsole



22236 1502860468400 4.3 0.97 0.1 0:卡拉是



分析这个结果后,你会发现一些有趣的事情。你会发现,最常使用的CPU程序是konsole虚拟终端程序,而不是yes命令,这是因为yes命令是konsole终端程序运行。如果你在一个真正的运行相同的命令序列,控制台(按Ctrl + Alt + F2键),你会看到yes命令是排名第一。



有许多方法来阻止yes命令运行。如果你想回去,运行它的壳,按Ctrl + C键。或者你可以用kill在另一个壳;命令停止yes该命令的操作;kill命令后面的PID或命令名称如下:



杀了22236美元







killall是美元



按Ctrl + C键发送SIGINT(信号2),这是中断信号,键盘需要控制。两个命令killall杀死和发送SIGTERM信号(15号)按照默认设置,程序可以设置sigterm信号(15)是捕获或忽略或以不同的方式解释。因此,如果kill命令程序的反应不同于你的预期,它很可能是被杀的有针对性的问题。



终止父进程通常终止子进程。但它并非总是如此。你知道过程是什么,用ps命令加上-f选项,你可以看到,如下图所示:



PS AXF美元



22371 R 2 konsole { } _ kdeinit



22372分/ 3 SS 0 | _ /斌/狂欢



24322分/ 3 + 0是卡拉德| | _ awesum



22381分/ 4 RS 0:00 | _ /斌/狂欢



24323分/ 4 R + 0 PS AXF | | _



现在,回到主题进程



SIGHUP的发音是SIG hup它是信号,简称终止的意思;信号;如何在几种方式发送SIGHUP信号:



#杀进程PID } {



# killall -HUP {姓名}过程



#杀1 } { PID



1 # killall进程名} {



因此,您可以使用PID或名称、信号名或数字。为什么我们需要这样做,而不是使用重新启动命令用自己的init(初始化)文件来控制服务是首选的方式,因为这些文件通常包含声音和错误检查和附加功能。使用的主要原因;kill命令和信号的主要原因是终止挂过程和控制尽可能明确而无需重新启动或者离开。



终止过程



正如你在信号手册页中看到的,控制过程的方法有十几种,下面是一些常用的方法:



杀死-停止{ PID }



发送SIGSTOP(17,19,23)停止的过程,不能消除这个过程。



杀死-控制



发送SIGCONT(19,18,25)重新启动停止的过程。



杀死-杀死{ PID }



发送SIGKILL(9)立即停止处理和不进行清洗作业。



杀戮- 9 - 1



停止所有的进程。



SIGKILL和SIGSTOP信号不能被捕获,阻止或忽视,但其他的信号可以。这是你的终极武器。



bash shell的命令我杀的



当执行下面的命令时,shell包含一个内置的杀戮命令:



$类型-全部杀死



杀戮是一个内置的外壳。



杀戮是



该命令的结果表明,有两个杀的命令,一个是bash的内置命令,和其他的是 /斌/杀了执行程序。一般来说,这两个命令都不会遇到冲突的情况,但如果您遇到杀戮命令的行为异常,你可以指定 /斌/杀戮指令明确。



你必须参考以下列表进一步资源参考资源了解Linux在杀了神奇的功能,因为它是你保持在门票领域的Linux系统。这些知识使你保持系统如外科手术,而不是重新启动系统,每一次你遇到的问题,正如我们所知道的一些不好的。



那是操作系统。



资源



Linux的食谱书的启动和终止第七章;Linux



bash(1)- GNU Bourne Again Shell



是(1)-在终止之前重复打印字符



信号(7)-可用信号列表



ps(1)-报告当前进程的快照



杀死(1)-向进程发送信号



Killall(1)-消灭过程的名字



Pkill(1)-查看或发出基于名称和其他属性的过程信号



技能(1)-发送信号或报告进程状态



Xkill(1)-消灭一个客户端程序根据X资源