描述问题
man指: 默认使用less作为PAGER的自带man
搜索效率较低指:
支持简单搜索, 每次匹配结果太多
不支持精确搜索(如引入正则,ERE or Perl风格,最好引入Perl风格 )
没有不同颜色的高亮(这一点我觉得较为重要)
man命令是使用极其频繁的命令之一,搜索功能又是它很重要的功能,但是我觉得这个功能很简陋啊
难道是这个问题不重要or已经得到解决(但是没有搜索到解决方案)?
上下文环境
Linux自带man命令(使用的PAGER为less)
重现
相关代码
报错信息
相关截图
已经尝试哪些方法仍然没有解决(附上相关链接)
搜索了:
less使用哪一种正则,未果
man more efficient
linux man use perl regex
问题简化
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
简单地说, 正则表达式有多个流派, 其中主要有pcre(兼容perl的正则)和POSIX规范的bre(基础正则), ere(扩展正则).
自己参考这篇Linux/Unix工具与正则表达式的POSIX规范, 虽然并没有提及less, 但基本可以确定是posix风格的, 因为它是GNU工具的一部分.
大部分出生在perl后的通用编程语言的正则表达式都借鉴了perl的正则模块, 它们基本上都是pcre. 但有的语言同时支持posix, 如ruby. 对于那么比较古老的编辑器, 如果支持正则, 基本也是pcre, 如vim的正则是bre基础上自己实现了一部分内容.
虽然这样说, 但在less上试了很多, 真的很沮丧. 它的正则真的非常奇怪.
唯一能给出的建立就是, 如果搜索单词, 则使用 word 来匹配, 两端加空格. 以及-N开启行号显示, 以及&pattern搜索可以只显示匹配的行.
man基于less, less基于more和vi. 对于vimer来说, vi太古老了.