Come cercare tutte le pagine del manuale su Linux?


18

A volte ho bisogno di cercare alcune parole in tutte le pagine del manuale. Sono a conoscenza apropos, ma se ho capito bene il suo manuale, limita la ricerca solo alle descrizioni.

Ogni pagina di manuale ha una breve descrizione disponibile al suo interno. apropos cerca le descrizioni per istanze di parole chiave.

Ad esempio, se cerco una parola come "viminfo", non ottengo alcun risultato ...

$ apropos viminfo
viminfo: nothing appropriate.

... sebbene questa parola esista in una sezione successiva del manuale di Vim (che è installato sul mio sistema).

   -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".

Quindi, come posso cercare una parola in ogni sezione di ogni manuale?

Risposte:


30

Da 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.

Questo apre direttamente la manpage ( vim, quindi ex, quindi gview, ...) per me, in modo da poter aggiungere un'altra opzione, ad esempio -wper avere un'idea di quale manpage verrà visualizzata.

$ 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
La combinazione -wK è particolarmente interessante
Leo Ufimtsev

6

Utilizzare l'opzione apropos globale in 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.

Quindi, man -K viminfoti darà la pagina di cui hai bisogno.


0
$ man -K "fopen"

ti dà l'output

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

y per aprire / visualizzare la pagina man

n per continuare la ricerca

q per uscire dalla ricerca


0

NetBSDha un'implementazione della ricerca a testo integrale apropos(1)che cerca attraverso il contenuto completo delle pagine man invece di limitarsi solo alla NAMEsezione. Potresti voler dare un'occhiata.

Esiste anche un'interfaccia basata sul web: man-k.org


Disclaimer: sono lo sviluppatore di entrambi gli strumenti.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.