有没有办法不区分大小写地搜索手册页?使用“/”搜索功能可以精确匹配大小写。
答案1
当未指定其他分页器时,man
用于less
显示手册页。
涉及更改寻呼机命令行的其他答案是正确的,但您也可以-i
在 less 运行时键入。来自 less 手册页:
-
后跟一个命令行选项字母(请参阅下面的选项),这将更改该选项的设置并打印一条描述新设置的消息。
因此,在 less 中键入-i
会以与在命令行上指定它相同的方式更改设置。我得到了这将起作用的提示如何使用模式修饰符使用 less 进行不区分大小写的搜索,然后在手册页中找到了解释。
答案2
仅当您使用大写字母时,而不是仅使用小写字母时。例如,运行man bash
并尝试:
/invoc
<== 不区分大小写/Invoc
<==区分大小写/INVOC
<==区分大小写
正如 @manatwork 在评论中指出的那样,您还可以通过添加export MANPAGER='less -I'
到您的~/.profile
.该MANPAGER
变量定义与该命令一起使用的程序man
。手段-I
(来自man less
):
-I or --IGNORE-CASE
Like -i, but searches ignore case even if the pattern contains
uppercase letters.
其他相关选项有(该选项通常默认启用):
-i or --ignore-case
Causes searches to ignore case; that is, uppercase and lowercase
are considered identical. This option is ignored if any upper‐
case letters appear in the search pattern; in other words, if a
pattern contains uppercase letters, then that search does not
ignore case.
因此,如果您export MANPAGER="less -I"; man bash
,您应该能够/iNvOc
以不区分大小写的方式进行搜索。
答案3
由于它是 Google 上的第一个结果,我还想补充一点,如果您开始使用最多作为您的寻呼机,您的搜索将是默认不区分大小写。它还添加了更多功能,例如着色手册页和向后搜索。
要安装,请使用您的发行版的包管理器,并且包名称到处都是“most”(例如apt install most
:)。然后在 shell 的启动文件中,例如~/.bashrc
添加环境变量:
export PAGER="most"
不要忘记用新的 shell 进程替换它,以便它可以读取它(例如exec bash
:)。
也为了做到区分大小写(注意:与OP要求的相反,但我来这里的原因:))使用选项-c
:
export PAGER="most -c"
答案4
通过环境变量LESS
:
LESS=-I man less
您还可以立即包含搜索字符串:
LESS=-I\ +/escape\ key man less
或者:
LESS='-I +/escape key' man less
甚至更复杂的结构:
LESS=+G?[+]cmd man less
+G
-转到页面末尾
?
-向后搜索
[+]
-剥夺字符的特殊含义 +
就是说,我们要寻找的是'+cmd'
从末尾开始少的那个人。
当您需要显示手册中的特定位置而不是引用时,这非常方便:
LESS=-I\ +8?lesskey man less
+8?
-倒数第八场比赛