Linux ps和pstree命令知识点总结
Linux中的ps命令是Process Status的缩写。ps命令用来列出系统中当前运行的那些进程。ps命令列出的是当前那些进程的快照,就是执行ps命令的那个时刻的那些进程,如果想要动态的显示进程信息,就可以使用top命令。
要对进程进行监测和控制,首先必须要了解当前进程的情况,也就是需要查看当前进程,而 ps 命令就是最基本同时也是非常强大的进程查看命令。使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等等。总之大部分信息都是可以通过执行该命令得到的。
ps 为我们提供了进程的一次性的查看,它所提供的查看结果并不动态连续的;如果想对进程时间监控,应该用 top 工具。
kill 命令用于杀死进程。
1. 查看所有进程
ps -eF -e: Select all processes. -F: Extra full format.
PSR (Processor)显示进程所在的CPU。
2. 查看所有进程(包括线程)
ps -eLF -e: Select all processes. -L: Show threads, possibly with LWP and NLWP columns. -F: Extra full format.
LWP (Low Weight Process),显示的是线程号TID。对Linux内核而言,线程和进程的管理没有任何区别。对用户而言,一个进程可能包含多个线程。PID和LWP相同,则该线程为进程的主线程。
3. 自定义格式查看
ps -eLo pid,lwp,nlwp,sched,pri,psr,args -e: Select all processes. -L: Show threads, possibly with LWP and NLWP columns. -o: User-defined format.
可查看想要查看的参数,如调度策略,优先级等。
4. pstree
以树状格式查看进程/线程使用pstree命令。
pstree -p -p: Show PIDs.
有关ps和pstree的具体使用方法,不妨使用man命令查看。