linux ps

2023-04-14

ps -aux | grep xxx | grep -v grep | gawk '{print $2}'


ps 英文全拼:process status

命令用于显示当前进程的状态,类似于 windows 的任务管理器。

-aux 显示所有包含其他使用者的进程

-ef 显示所有进程

-aux与-ef这两者的输出结果差别不大,但展示风格不同。COMMADN列如果过长,aux会截断显示,而ef不会,如果想查看进程的CPU占用率和内存占用率,可以使用aux ,如果想查看进程的父进程ID和完整的COMMAND命令,可以使用ef。


| 表示管道,上一条命令的输出,作为下一条命令参数


grep 英文全拼:Global search regular expression and Print out the line

文本搜索工具,根据用户指定的“模式(过滤条件)”对目标文本逐行进行匹配检查,打印匹配到的行。


grep -v grep

可以过滤掉查找进程的自身这条命令,因为grep本身也是一个进程,ps会将grep进程的信息也显示出来。默认会多显示一行--color=auto


gawk '{print $2}'

gawk的主要特性之一是其处理文本文件中数据的能力。它会自动给一行中的每个数据元素分配一个变量。默认情况下, gawk会将如下变量分配给它在文本行中发现的数据字段:

$0代表整个文本行;

$1代表文本行中的第1个数据字段;

$2代表文本行中的第2个数据字段;

$n代表文本行中的第n个数据字段。


cat data.txt

One line of test text.

Two lines of test text.

Three lines of test text.

 

gawk '{print $1}' data.txt

One

Two

Three