grep
搜索输出相应的行
Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。格式为:
grep 字符串模板 文件名
awk
对行进行操作
awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大。简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。
awk工作流程是这样的:读入有'\n'换行符分割的一条记录,然后将记录按指定的域分隔符划分域,填充域,$0则表示所有域,$1表示第一个域,$n表示第n个域。默认域分隔符是"空白键" 或 "[tab]键",所以$1表示登录用户,$3表示登录用户ip,以此类推。
awk -F '指定分割域' '{print $1"\t"$7}'
sort
排序,没什么好说的
参数如下:
参数 | 解释 |
---|---|
-b,--ignore-leading-blanks | Ignore leading blanks. |
-d,--dictionary-order | Consider only blanks and[alphanumeric(https://www.computerhope.com/jargon/a/alphanum.htm)characters. |
-f,--ignore-case | Fold lower case to upper case characters. |
-g,--general-numeric-sort | Compare according to general numerical value. |
-i,--ignore-nonprinting | Consider only printable characters. |
-M,--month-sort | Compare (unknown) < **JAN**' < ... < DEC'. |
-h,--human-numeric-sort | Compare human readable numbers (e.g., "2K", "1G"). |
-n,--numeric-sort | Compare according to stringnumerical value. |
-R,--random-sort | Sort by random hash of keys. |
--random-source=FILE | Get random bytes from FILE. |
-r,--reverse | Reverse the result of comparisons. |
--sort=WORD | Sort according to WORD: general-numeric -g, human-numeric -h, month -M, numeric -n, random -R, version -V. |
-V,--version-sort | Natural sort of (version) numbers within text. |
例子:
grep 'op_query' mongodb.log | awk -F'op_query' '{print $2}' |sort -nr |less
grep 'op_query' mongodb.log | awk -F'op_query' '{print $2}' |awk -F'ms' '{print $2}' |less
网友评论