Як шукати всі сторінки керівництва в Linux?


18

Іноді мені потрібно шукати певні слова через усі сторінки керівництва. Мені це відомо apropos, але якщо я розумію його посібник правильно, він обмежує пошук лише до описів.

Кожна сторінка з інструкціями містить короткий опис. apropos шукає описи для примірників ключових слів.

Наприклад, якщо я шукаю таке слово, як "viminfo", я взагалі не отримую результатів ...

$ apropos viminfo
viminfo: nothing appropriate.

... хоча це слово існує в більш пізньому розділі керівництва Vim (яке встановлено в моїй системі).

   -i {viminfo}
               When  using  the  viminfo file is enabled, this option sets the filename to use, instead of the default "~/.vim‐
               info".  This can also be used to skip the use of the .viminfo file, by giving the name "NONE".

То як я можу шукати слово через кожен розділ кожного посібника?

Відповіді:


30

Від man man:

-K, --global-apropos
      Search for text in all manual  pages.   This  is  a  brute-force
      search,  and is likely to take some time; if you can, you should
      specify a section to reduce the number of pages that need to  be
      searched.   Search terms may be simple strings (the default), or
      regular expressions if the --regex option is used.

Це безпосередньо відкриває мені сторінку ( vim, то ex, тоді gview, ...), тож ви можете додати інший варіант, наприклад, -wщоб отримати уявлення про те, яка сторінка відображатиметься.

$ man -wK viminfo
/usr/share/man/man1/vim.1.gz
/usr/share/man/man1/vim.1.gz
/usr/share/man/man1/gvim.1.gz
/usr/share/man/man1/gvim.1.gz
/usr/share/man/man1/run-one.1.gz
/usr/share/man/man1/gvim.1.gz
/usr/share/man/man1/gvim.1.gz
/usr/share/man/man1/run-one.1.gz
/usr/share/man/man1/run-one.1.gz
...

4
Комбінація -wK є особливо цікавою
Лев Уфімцев

6

Використовуйте глобальну опцію apropos в man.

 -K, --global-apropos
              Search for text in all manual pages.  This is a brute-force search, and is likely to take some time; if you can, you should specify a section to reduce the number  of pages that need to be searched.  Search terms may be simple strings (the default), or regular expressions if the --regex option is used.

Отже, man -K viminfoдамо вам потрібну сторінку.


0
$ man -K "fopen"

дає вихід

/usr/share/man/en/man3/fclose.3.gz? [ynq]  

y відкрити / відобразити сторінку чоловіка

n щоб продовжити пошук

q щоб припинити пошук


0

NetBSDмає повний текстовий пошук, реалізація apropos(1)якого здійснює пошук по всьому вмісту довідкових сторінок, а не лише до NAMEрозділу. Ви можете перевірити це.

Для нього також є веб-інтерфейс: man-k.org


Відмова: Я розробник обох інструментів.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.