分页: 1 / 1
grep如何输出已匹配串的起始位置(即相对文件头的偏移量)?
发表于 : 2016-02-07 16:40
由 科学之子
grep如何输出已匹配串的起始位置(即相对文件头的偏移量)?
Sun Feb 7 19:31:38 CST 2016补充:
又仔细搜索并检查相关资料:
--byte-offset虽然宣称是字节偏移,但实测发现只是显示行号?
Tue Feb 9 16:54:11 CST 2016补充:
原来-b参数要配合-o参数才能显示匹配串偏移,否则显示的是所在行首偏移位置
-o参数输出时只显示匹配的部分,而非显示整个行
Re: grep如何输出已匹配串的起始位置(即相对文件头的偏移量)?
发表于 : 2016-02-08 10:14
由 vickycq
科学之子 写了:又仔细搜索并检查相关资料:
--byte-offset虽然宣称是字节偏移,但实测发现只是显示行号?
不会吧?....
代码: 全选
$ cat .bashrc | grep -aob 'use_color'
5971:use_color
6371:use_color
6393:use_color
7393:use_color
$ echo "cp210x ttyUSB0: cp210x converter now disconnected from ttyUSB0" | grep -aob 'ttyUSB'
7:ttyUSB
55:ttyUSB
参考
http://unix.stackexchange.com/questions ... using-grep
Re: grep如何输出已匹配串的起始位置(即相对文件头的偏移量)?
发表于 : 2016-02-09 16:12
由 科学之子
vickycq 写了:科学之子 写了:又仔细搜索并检查相关资料:
--byte-offset虽然宣称是字节偏移,但实测发现只是显示行号?
不会吧?....
代码: 全选
$ cat .bashrc | grep -aob 'use_color'
5971:use_color
6371:use_color
6393:use_color
7393:use_color
$ echo "cp210x ttyUSB0: cp210x converter now disconnected from ttyUSB0" | grep -aob 'ttyUSB'
7:ttyUSB
55:ttyUSB
参考
http://unix.stackexchange.com/questions ... using-grep
感谢回复,新年快乐.
仔细测试和看文档发现
是所在行的首字节偏移
但并非匹配串的偏移位置.我的问题用grep无解了?有其它命令代替?
Tue Feb 9 16:20:04 CST 2016补充:
仔细看了看,好像还是有解
Tue Feb 9 16:23:29 CST 2016:
确定有解了
原来加上-o参数就好
如果是二进制文件,就加上-a
单纯使用-b仅仅是行匹配,就是显示匹配串所在行的首位置