查询字符串所在的行号

2019-10-22  本文已影响0人  rgcyc

最近在写shell脚本过程中经常会遇到查找字符串所在行号,这里做个记录。

以1.txt为例,

xxx
yyy
zzz
xxx

1. 使用grep

1.1.查找"xxx"出现在哪几行

# grep  -n  "xxx"   1.txt  
1:xxx
4:xxx

如果需要提取字符串所处的行号,可以使用cut命令进行提取

# grep  -n  "xxx"   1.txt  | cut -d ":" -f 1

1.2.查找字符串"xxx"最后一次匹配的行号

# grep  -n  "xxx"   1.txt  | tail -1
1:xxx
4:xxx

1.3.查找字符串"xxx"第二次匹配的行号

# grep  -n  "xxx"   1.txt | head -2 | tail -1
1:xxx
4:xxx

2.使用awk

2.1.查找"xxx"出现在哪几行

awk '/xxx/{print NR}' 1.txt

2.2.查找字符串"xxx"最后一次匹配的行号

awk '/xxx/{print NR}' 1.txt | tail -1

https://blog.csdn.net/ithomer/article/details/8465880

上一篇 下一篇

猜你喜欢

热点阅读