命令行调试技巧

2017-12-06  本文已影响2人  汨罗在北方

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
上一篇 下一篇

猜你喜欢

热点阅读