Is there a way to search man pages case-insensitively? Using the '/' search feature matches exact case.
When no other pager is specified,
less to display man pages.
The other answers that involve changing the pager command line are correct, but you can also type
-i while less is running. From the less man page:
-Followed by one of the command line option letters (see OPTIONS below), this will change the setting of that option and print a message describing the new setting.
-i while in less changes the setting in the same way that specifying it on the command line would. I got the hint that this would work from How do you do a case insensitive search using a pattern modifier using less, then found the explanation in the man page.
Only if you use caps, not if you just use lower case letters. For example, run
man bash and try:
/invoc<== case insensitive
/Invoc<== case sensitive
/INVOC<== case sensitive
As @manatwork poited out in the comments, you can also control this behavior by adding
export MANPAGER='less -I' to your
MANPAGER variable defines which program is used with the
man command. The
-I or --IGNORE-CASE Like -i, but searches ignore case even if the pattern contains uppercase letters.
Other relevant options are (this one is usually on by default):
-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.
So, if you
export MANPAGER="less -I"; man bash, you should be able to search for
/iNvOc in a case-insensitive way.