1. 查看进程(参数带 - 与不带有区别):
command [options]
例:ps -a(配合其他options参数以展示进程更多参数)
ps -ef | grep 进程名(返回值是该进程的详细信息)
pgrep 进程名(返回值直接是该进程PID)
pidof 进程名,同pgrep,不同点pgrep 进程名可以模糊匹配, pidof的进程名必须精准
常用:
ps a 显示现行终端机下的所有程序,包括其他用户的程序。
ps u 以用户为主的格式来显示程序状况。
ps x 显示所有程序,不以终端机来区分。
ps -A 显示所有程序。
ps c 列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。
非常用:
ps -e 此参数的效果和指定"A"参数相同。
ps e 列出程序时,显示每个程序所使用的环境变量。
ps f 用ASCII字符显示树状结构,表达程序间的相互关系。
ps -H 显示树状结构,表示程序间的相互关系。
ps -N 显示所有的程序,除了执行ps指令终端机下的程序之外。
ps 采用程序信号的格式显示程序状况。
ps S 列出程序时,包括已中断的子程序资料。
ps -t <终端机编号> 指定终端机编号,并列出属于该终端机的程序的状况。
参数含义:
- F 进程的标志(flag),4表示用戶为超級用戶
- S 进程的状态(stat)
- PID 进程的ID
- C CPU使用资源的百分比
- PRI priority(优先级)的缩写,
- NI Nice值,
- ADDR 核心功能,指出该进程在內存的那一部分,如果是运行的进程,一般都是“-”
- SZ 用掉的內存的大小
- WCHAN 当前进程是否正在运行,若为“-”表示正在运行
- TIME 用掉的CPU的时间
- CMD 所执行的指令
结果列名含义:
- USER 进程的属主;
- PID 进程的ID;
- PPID 父进程;
- %CPU 进程占用的CPU百分比;
- %MEM 占用内存的百分比;
- NI 进程的NICE值,数值大,表示较少占用CPU时间;
- VSZ 进程使用的虚拟內存量(KB);
- RSS 该进程占用的固定內存量(KB)(驻留中页的数量);
- TTY 该进程在那个終端上运行(登录用户的終端位置)。
- pts/0 则表示由网络连接主机进程
- WCHAN 当前进程是否正在运行,若为-表示正在运行;
- START 该进程被触发启动时间;
- TIME 该进程实际使用CPU运行的时间;
- COMMAND 命令的名称和参数;
- STAT 状态位常見的状态字符
- D 无法中断的休眠状态(通常 IO 的进程);
- R 正在运行可中在队列中可过行的;
- S 处于休眠状态;
- T 停止或被追踪;
- W 进入内存交换 (从内核2.6开始无效);
- X 死掉的进程 (基本很少見);
- Z 僵尸进程;
- < 优先级高的进程
- N 优先级较低的进程
- L 有些页被锁进内存;
- s 进程的领导者(在它之下有子进程);
- l 多进程的(使用 CLONE_THREAD, 类似 NPTL pthreads);
- + 位于后台的进程组;
2. 通过端口查看进程:
2.1 lsof -i: 查看所有进程端口使用,采用的网络协议等信息
2.2 lsof -i:端口号, 光查看该端口号的具体信息
2.3 netstat -tpln | grep 端口号
3. 杀死进程
获取进程PID:
根据pid杀死进程
以上资料由查询资料结合自己实战所总结,由于本人记忆太差,所以写下随笔,给予小白及和我同个星球的人……