从日志中获取特定文本

从日志中获取特定文本

我有一些顶级数据的日志文件:

2016 年 5 月 9 日星期一 23:45:02 美国东部时间
PID 用户 PR NI VIRT RES SHR S %CPU %MEM TIME+ 命令
14816 半径 25 0 848m 415m 10m S 10 2.6 274:05.28 java

如何获取第一行和 %MEM 的值?

我已经尝试过sed//awkpaste没有任何运气。

不知何故,数据并不完美,因为我不能总是相信该值是第 21 位。

答案1

一个尴尬的时刻:

$ awk 'NR == 1 {print;} NR == 2 {print $10; exit;}' input

答案2

您可以尝试使用head/tailawk

head -1 logfile 
tail -n +2 logfile | awk '{print $10}'

相关内容