今天我们要学习的几个linux指令主要是用于了解系统的状态,帮助我们获取进程的信息和进程的资源占用等。 ①who:列出当前已登录入系统的用户 ![]() 上述中第一列为:用户名;第二列为:终端设备的设备文件名 在linux中,设备在文件系统中有一个文件名(同普通磁盘文件不同的是文件类型属于特征文件),设备文件一般放于目录/dev下 tty:打印出当前终端的设备文件名 ![]() who am i:列出当前终端上的登录用户 whoami :仅列出当前终端上的登录用户 ![]() uptime:已开机时间 ![]() 上述中依次为当前时间,开机时间,当前登入系统的用户数,近期1、5、15分钟内系统cpu的负载(平均调度队列长度) ②top:列出资源占用排名靠前的进程 ![]() 从上述命令可以查看该系统的: Tasks: 进程数(226个); VIRT:进程逻辑地址空间大小(virtual),c语言中的malloc和delete内存分配,单位为k RES:驻留内存数(Resident),占用物理内存数(实际分配给进程的内存) SHR:与其他进程共享的内存数(share),共享函数库 %cpu,%mem分别为占用cpu、内存百分比 TIME+:占用的cpu时间(注意:并非进程运行时间,而是实际使用CPU的时间,两者不一定相等) ③查阅进程状态:ps (process status) (实际上就是将内核中进程状态信息有选择地打印出来) ![]() 当命令ps 无选项时:只列出在当前终端上启动的进程 列出的项目有:PID,TTY,TIME,COMMAND e选项:列出系统中所有的进程(进程范围) ![]() f选项:以full格式列出每一个进程(控制列的数目) ![]() l选项:以long格式列出每一个进程(控制列的数目) ![]() 命令ps列出的进程属性 UID:用户ID(注册名) PID:进程ID PPID:父进程的PID C:CPU占用指数:最近一段时间(秒级别)进程占用CPU情况 STIME:启动时间 SZ:进程逻辑内存大小(Size) TTY:终端的名字 COMMAND:命令名 WCHAN:进程在内核的何处睡眠(Wait Channel) TIME:累计执行时间(占用CPU的时间) PRI:优先级 S:状态,S(Sleep),R(Run),Z(Zombie) Sleep:阻塞状态 Zombie:僵尸状态(进程已死,等待系统处理) ps –ef | more ![]() ps –el | more ![]() ④free:了解内存使用情况 ![]() 内存总量total,空间为free linux为提高效率,利用程序暂时不用的内存,缓冲读写过的磁盘信息,当前缓冲为buff/cache,若不计buffers/cache,系统有实际可利用资源为available(单位为kb) 此外,还打印了磁盘swap区的使用情况 ⑤vmstat:了解系统负载 ![]() ![]() 希望大家务必自己亲手实践一下,这样更便于理解和记忆哦~ ---------------------------------------------------------------------------------------------------------------------- 我们尊重原创,也注重分享,文章来源于微信公众号:一粟将凯,建议关注公众号查看原文。如若侵权请联系qter@qter.org。 ---------------------------------------------------------------------------------------------------------------------- |