一 概述:
*和进程管理相关的重要命令是:ps、top和pgrep。
二 ps:
(1)ps是收集进程信息的重要工具。
*提供的信息包括:拥有进程的用户、进程的起始时间、进程ID(PID)、进程所属的终端(TTY)、进程使用的内存、进程占用的CPU、进程所对应的命令(CMD)等。
(2)常用选项
*选项-e、-A和-ax:查看所有的进程信息。
*-o:指定想要显示的列。格式:ps [other options] -o parameter1,parameter2...(主要是小写,如:ps -o pid)。
如:ps -o pid。可以在pid后面添加=,这样就直接显示数字不显示PID。
*-C:显示指定命令对应的进程ID。如:ps -C command 。
详情参见man ps。
三 top:显示linux系统当前进程的运行情况(动态、实时)。
(1)功能:不但能够显示进程信息,还支持使用一系列热键来管理进程。
*top指令的输出信息整合了uptime、free、ps等指令的输出信息,使管理员通过一个指令就可以掌握整个系统的运行状况。
(2)top运行时:
*space键:立即刷新输出信息。
*h键:显示top指令内置的热键及帮助信息。
*q键:退出top指令。
四 pgrep:指定命令对应的进程ID,以及其他信息。
(1)重要选项:
*-P<父进程号>:显示符合指定父进程的进程号。
*-u<用户ID>:显示符号用户ID号的进程。
五 作业(jobs):
jobs:显示shell的作业信息。
格式:jobs [选项] [字符串]
(1)作业与进程区别:作业是站在最终用户的角度来说的,而进程是对于os内部来说的。通常一个作业对用于一个进程,但有时一个作业可以由几个进程共同完成。
(2)jobs的重要选项:
*-l:显示作业时包括进程号。
*-p:显示作业列表时仅显示其对应的进程号。
*-r:仅显示运行作业。
*-s:仅显示暂停作业。
(3)作业以%num编号,如%1代表第1号作业。(自己看的)
六 杀死进程(kill、killall和pkill)
(1)kill:用来杀死指定的进程或者作业。kill是基于信号机制工作的,通过向指定的进程或作业发送特定的信号以实现杀死进程或作业的功能。
格式:kill [选项] [参数]
重要选项:
* -l:显示信号列表。
*-s<信号名称或编号>:指定要发送的信号(默认发送SIGTERM),可简写为-<信号名称或编号>,如:kill -9 进程ID。kill -9 %1(杀死1号作业)。
(2)killall:根据名称结束进程,并且可以一次结束多个同名的进程(kill all processes by name)。
(3)pkill:对指定名称进程发送信号(默认是SIGTREM)。
格式:pkill [选项] [参数]
选项:
*-P<父进程号>:显示符合指定父进程的进程号。
*-u<用户ID>:显示符号用户ID号的进程。
*-信号:指定要发送的信号
参数:进程名称含有的字符串。
(4)捕捉并相应信号(trap命令)
*trap命令在脚本中用来为信号分配信号处理程序。一旦使用trap将某个函数分配给一个信号,那么当脚本运行时收到这个信号,对应于信号的函数就会开始执行。
*语法:trap 'signal_handler_function_name' signal_list
*作用:通过trap命令,可以为任意可用的信号(kill -l)定义处理程序,也可以为多个信号指定单个信号处理程序。
七 pmap命令:
待续...