busque todos los comandos con wh, busque por parte de la palabra clave en la página de manual

busque todos los comandos con wh, busque por parte de la palabra clave en la página de manual

Quiero encontrar todas las páginas man para los comandos que comienzan con wh. Pero no entiendo por qué la siguiente palabra clave no funciona.

  man -f "wh"

También si pongo

  man chmod

en la página de manual de chmod, tiene la palabra "simbólico", así que puse

  man -f "symbolic"

pero chmodel comando no aparece en los resultados.

En resumen, ¿cómo encuentro/busco comandos o descripciones de comandos por contenido de palabras internas? Sé cómo encontrar determinadas palabras después de obtener la página de manual, usando /caracteres, pero quiero encontrar todas las páginas de manual con la palabra de búsqueda.

Respuesta1

Puede utilizar el -kinterruptor para buscar todas las páginas de manual que contienen whsu nombre o sus breves descripciones. Luego simplemente busque los que comienzan con wh. El comando aproposes equivalente a man -k.

Ejemplo

$ man -k wh | grep "^wh"
what (1p)            - identify SCCS files (DEVELOPMENT)
whatis (1)           - display manual page descriptions
whereis (1)          - locate the binary, source, and manual page files for a command
which (1)            - shows the full path of (shell) commands.
while (n)            - Execute script repeatedly as long as a condition is met
whiptail (1)         - display dialog boxes from shell scripts
whirlwindwarp (6x)   - crazy moving stars
whline (3x)          - create curses borders, horizontal and vertical lines
whline_set (3x)      - create curses borders or lines using complex characters and renditions
who (1)              - show who is logged on
who (1p)             - display who is on the system
whoami (1)           - print effective userid
whois (1)            - client for the whois service

Buscando en las páginas man

Si está decidido a buscar en las páginas de manual realizando una búsqueda de texto completo, puede utilizar el -Kinterruptor. Esa es una K mayúscula.

Ejemplo

$ man -w -K symbolic | head -10
/usr/local/share/man/man1/mimeopen.1
/usr/local/share/man/man1/mimetype.1
/usr/local/share/man/man1/ptksh.1
/usr/share/man/man1/as.1.gz
/usr/share/man/man1/atop.1.gz
/usr/share/man/man1/atopsar.1.gz
/usr/share/man/man1/attr.1.gz
/usr/share/man/man1/autoreconf.1.gz
/usr/share/man/man1/bakefilize.1.gz
/usr/share/man/man1/bash.1.gz

Sin embargo, este método no le proporciona el nombre de la página de manual ni una breve descripción. Solo muestra el nombre real del archivo en el que está almacenada la página de manual, que suele ser el nombre del comando.

Respuesta2

man -f wh(sinónimo de whatis) muestra la descripción breve (de una línea) del comando wh. La bandera -findica manque se muestre solo la primera línea y no toda la página. Eso no es lo que buscas.

El comando apropos wh(sinónimo de man -k wh) enumera las páginas man cuya breve descripción contiene la cadena wh. Si desea combinar una búsqueda en la descripción breve con un patrón en el nombre del comando, puede filtrar los resultados aproposcon grep. Para restringir a los comandos del usuario (es decir, la sección 1) y no mostrar los comandos del administrador, las funciones de la biblioteca C, etc., pase -S 1. Si desea comandos tanto de usuario como de administrador, pase -S 1:8.

apropos symbolic | grep '^wh'

Para buscar en páginas man completas, con mandb (la manimplementación más común en Linux), use -K(mayúscula K, a diferencia de minúsculas k) apropos. Esto puede llevar mucho tiempo si tiene muchas páginas de manual instaladas; considere pasar la --regexopción para restringir la búsqueda a páginas man cuya descripción de una línea coincida con una expresión regular.

man -K -S 1:8 --regex 'change.*file' symbolic

Respuesta3

man -k '^symbolic$'

Esto mostrará el nombre de la aplicación y el número de página en la que se encuentra la palabra simbólico. Deshazte del $ si quieres algo que comience con simbólico.

información relacionada