¿Cómo puedo 'cat' una página de manual como 'cat' un archivo para obtener solo un volcado de los contenidos?
¿Cómo puedo 'cat' una página de manual como 'cat' un archivo para obtener solo un volcado de los contenidos?
Respuestas:
En primer lugar, los archivos man generalmente son solo archivos de texto gziped en algún lugar de su sistema de archivos. Dado que su kilometraje variará al encontrarlos y probablemente deseaba la versión procesada y formateada que le da man en lugar de la fuente, puede volcarlos con la manherramienta. Al mirar man man, veo que puede cambiar el programa utilizado para ver páginas de manual con la -Pbandera como esta:
man -P cat command_name
Tampoco vale nada que mandetecte automáticamente cuándo canaliza su salida en lugar de verlo en la pantalla, por lo que si va a procesarlo con otra cosa, puede saltar directamente a ese paso de la siguiente manera:
man command_name | grep search_string
o volcar a un archivo:
man command_name > formatted_man_page.txt
manalias a algo o banderas forzadas en tu shell que separan tu función de la normal man?
man command_name > formatted_man_page.txtcausará alguna palabra duplicada.
Para obtener un archivo de página de manual ASCII, sin los molestos intentos de subrayado / subrayado de subrayado, y secuencias extrañas para hacer negrita:
man ksh | col -b > ksh.txt
Las páginas de manual suelen ser troffarchivos preprocesados, y puede acceder al texto sin formato con,
groff -t -e -mandoc -Tascii manpage.1 | col -bx > manpage.txt
groffes un contenedor para troff.
Es posible que primero necesite usar gzip para descomprimir los archivos de la página de manual, y aún tendrá mucha información de formato en la salida.
Hago esto todo el tiempo. Esta línea de comando me hace feliz:
man man | col -bx > man.txt
col -b elimina los espacios de retroceso.
col -bx también reemplaza las pestañas con espacios, que es mi gran preferencia.
Si quiero que el texto se formatee al ancho de mi preferencia mientras leo, entonces cambio el comando a esto:
MANWIDTH=10000 man man | col -bx > man.txt
man man | col -bx > man.txttrabajó para mi. Gracias.
Simplemente use el mancomando: puede canalizar la salida a otras cosas tal como puede hacerlo con catun archivo.