命令解析:grep -B 1 "done solving" ${LOG} | grep "Wrote snapshot" | awk '{print $4}'
上述命令中grep主要用来进行在file(${LOG})内文中比对相对应的部分(”done solving“),或是当没有指定档案时, 由标准输入中去比对。在预设的情况下,grep会将符合样式的那一行列出。
1.子命令解析:grep -B 1 "done solving" ${LOG}
grep -B NUM,--before-context=NUM
-----------与 -A NUM 相对,但这此参数是显示除符合行之外,并显示在它之前的NUM行。--------
上述命令中就是查找${LOG}文件中,带有"done solving"的行,并将此行前面的1行进行显示(此处为取出传递给下一个子命令);
ex: (从file中搜寻有panda样式的行,并显示该行的前1行)
$ grep -B 1 panda file
2. 子命令解析:grep "Wrote snapshot"
上述子命令就是查找前一子命令中给出的文件中包含"Wrote snapshot"内容的行,(其实主要是确认上一命令给出的行包含相应的字符串)
eg:
grep "match_pattern" file_name
--在文件中搜索一个单词,命令会返回一个包含“match_pattern”的文本行--
3. 子命令解析: awk '{print $4}'
awk处理过程: 依次对每一行进行处理,然后输出;其中print 是awk打印指定内容的主要命令;其中:-F指定分隔符,$1 指指定分隔符后,第一个字段,$3第三个字段, \t是制表符;一个或多个连续的空格或制表符看做一个定界符,即多个空格看做一个空格。
上述命令为查找出空格分隔符之后的第四个字段内容,并输出。