shell命令之根据字符串查询文件对应行记录

显示xxx字符串对应的行数,并向前打印3行,向后打印2行,查找对应文件为filename.txt

命令:grep -n 'xxx' -A3 -B2 --color=auto filename.txt

学习地址:http://man.linuxde.net/

命令:grep -v 'aaa' -n 'xxx' filename.txt 查找文件中字符串,排除行中含有aaa字符串的情况

ps -ef |grep mysql |grep -w 'usr/sbin/mysqld'|grep -v 'grep'|awk '{print $2}'

使用'{print $2}' 代表打印出当前输出的第二列参数的值

可以使用awk命令用作打印截取

awk 'BEGIN{FS=" "} {print $1} {print $NF} END{print "end"}' aa.txt

FS=" "表示aa.txt中的数据按空格进行分列也可以使用 awk -F" " 'BEGIN{pring "start"} {print $1} {print $NF} END{print "end"}'这样的方式进行分列,$NF 表示打印出最后列的数据。

这里读取aa.txt文档中的数据,这里需要使用'{print ..}',将aa.txt中的每一行进行输入到awk中,进行一行一行的处理,如果是多行,一定要注意这个细节。

这里面的aa.txt读入的数据都是awk的对应的参数,然后,使用print就可以打印出来

原文地址:https://www.cnblogs.com/rainy-shurun/p/5113825.html