ps命令是最基本的进程查看命令,使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵尸、哪些进程占用了过多的资源等。ps是显示瞬间进程的状态,并不动态连续;如果想对进程进行实时监控应该用top命令。
1、基本参数
- -A:所有的进程均显示出来,与 -e 具有同样的效用;
- -a:显示现行终端机下的所有进程,包括其他用户的进程;
- -u:以用户为主的进程状态;
- -x:通常与 a 这个参数一起使用,可列出较完整信息;
2、不加参数的ps命令
不加参数,直接执行ps命令,控制台输出4列信息:
- PID: 运行着的命令(CMD)的进程编号
- TTY: 命令所运行的位置(终端)
- TIME: 运行着的该命令所占用的CPU处理时间
- CMD: 该进程所运行的命令
3、显示当前所有进程
ps -a,同时加上x参数会显示没有控制终端的进程。其中-a代表all。
ps -ax
# 这个命令的结果或许会很长。为了便于查看,可以结合less命令和管道来使用。
ps -ax | less
4、根据用户查看进程
在需要查看特定用户进程的情况下,我们可以使用 -u 参数。比如我们要查看用户’root’的进程,可以通过下面的命令:
ps -u root
5、根据cpu和内存使用来查看进程
希望把结果按照 CPU 或者内存用量来筛选,这样你就找到哪个进程占用了你的资源。要做到这一点,我们可以使用 aux 参数,来显示全面的信息:
ps -aux | less
6、根据顺序来查看进程
默认的结果集是未排好序的。可以通过 --sort命令来排序。
ps -aux --sort -pcpu | less
# 根据CPU使用率来升序排序
ps -aux --sort -pmem | less
# 根据内存使用率来升序排序
7、根据进程名和PID来查看进程
使用 -C 参数,后面跟你要找的进程的名字。比如想显示一个名为getty的进程的信息,就可以使用下面的命令:
ps -C getty
# 如果想要看到更多的细节,我们可以使用-f参数来查看格式化的信息列表
ps -f -C getty