sábado, 13 de octubre de 2007

MAN (Paginas de manuales o man pages) E INFO (Paginas de información o info pages)

Cada programa en Linux tiene su pagina man, tienen como propósito documentar la sintaxis del comando y cada opcion con que cuenta.

Visores gráficos para las paginas de manual e información:


Konqueror: Navegador web y de archivos de KDE. Simplemente escriba:

man:algo o info:/algo , en la barra de direcciones.

Yelp: Visor de GNOME

Pinfo: Basado en ncurses para ver paginas de manual e info desde la consola.

*RTFM (read the fine man page, lee la pagina de manual adecuada).

Linux ve todas las paginas de manual de un sistema como si fueran parte de un unico manual. Este se divide en secciones:

1 Programas ejecutables o comandos del interprete de ordenes (shell).
2 Llamadas de sistema.
3 Llamadas de bibliotecas.
4 Archivos especiales (alojados normalmente en /dev)
5 Formatos de archivo y convenciones
6 Juegos
7 Miscelanea
8 Comandos de adminsitración del sistema
9 Rutinas no estandar del nucleo
n Documentacion nueva, que podria ser trasladada posteriormente
l Documentación local especifica de si sistema

Referencias a paginas numeradas de manual, ejm:

grep(1) hace referencia a man grep en la seccion 1:

$man 1 grep

Para enumerar todas las secciones de las man pages de un comando o programa:

$man -f nombre_comando_programa

Cada man pages esta dividida en secciones, generalmente son: NOMBRE, SINOPSIS, DESCRIPCION, OPCIONES, ARCHIVOS, EJEMPLOS, VEA TAMBIEN, BUGS, AUTOR/TRADUCCION

La sintaxis de los comandos es:

nombre_comando [indicadores opcionales] cualquier otro elemento necesario

Texto en negrita: Escriba esto exactamente como se muestra.
Texto en cursiva: Denota argumento, o sea se debe remplazar con el valor que quiera. Depende del visro que use puede verse subrayado o en negritas.

[-abc] : Todo entre corchetes es opcional y se puede combinar
[-a | -b | -c] : No se pueden combinar entre si
argumento... Los puntos suspensivos indican que se pueden introducir varios argumentos, los delimitantes son espacios pero a veces se usan comas.
[expresión]... pueden facilitarse varias expresiones
Las opciones cortas pueden escribirse:

-abc o -a -b -c

Las opciones largas se introducen individualmente con doble guión:

--opcion1 –opcion2 –opcion3

ENCONTRA PAGINAS DE MANUAL APROPIADAS

Ejm: quiere encontrar un programa que cuente las palabras contenidas en un archivo, use la busqueda de palabras clave con apropos o man -k:

$apropos cout words
$man -k count words


A veces la base de datos de man puede quedar corrupta, para encontrar paginas de manual perdidas intente buscar con whereis -m:

$whereis -m cat
cat:/usr/man/man1/cat.1.gz

luego leala con man:

$man /usr/man/man1/cat.1.gz

si no funciona se puede intentar reconstruir la base de datos con mandb:

#mandb

si no funciona se puede usar locate y egrep para realizar una busqueda por todo el sistema:

$locate /cat. | egrep -w 'cat\.[1-9] [a-zA-Z]*[.gz]?[_F_]' o $locate/cat.


Si el visor man no funciona se puede usar zcat y nroff:


$zcat /usr/man/man1/cat.1.gz | nroff -man | less


Ultimo recurso: leer la pagina de manual en bruto con zless:


$zless /usr/man/man1/cat.1.gz


*groff : programa para dar formato a documentos o de composición tipografica, se pueden crear multiples documentos con formatos distintos a partir de un mismo archivo origen.



CONFIGURAR MANPATH

Si desea agregar una pagina de manual que no se encuentra en la ruta normal por ejemplo /opt/man, edite /etc/manpath.conf y añada la ruta:

MANDATORY_MANPATH /opt/man

si se tienen subdirectorios se colocan en este orden:

MANDATORY_MANPATH /opt/man/local
MANDATORY_MANPATH /opt/man

primero los subdirectorios y de ultimo el directorio padre.

Para mostrar los directorios de manual actuales use:

$manpath

Para ver las PAGINAS DE INFORMACION (info pages)

$info nombre_comando_programa



IMPRIMIR PAGINAS DE MANUAL Y PAGINAS DE INFORMACIÓN


Para imprimir manpages:


$man -t nombre_comando_programa | lpr


-t se encarga de darle el formato adecuado.

- Para imprimirlo por una impresora de red:


$man -t nombre_comando_programa | lpr -P printername


Para ver las impresoras disponibles:

$lpstat -p -d

Manual de usarios de CUPS:


http://localhost:631/help

Para imprimir infopages:


$info nombre_comando_programa | lpr -o cpi=12 -o page-left=54 -o page-right=54 \ -o page-top=54 -o page-bottom=54

tambien se puede usar:


$info nombre_comando_programa | lpr


pero saldra sin formato apropiado.

Para imprimir paginas selectivas hay que exportarlas a un archivo:


$man nombre_comando_programa | col -b > archivo.txt
$info nombre_comando_programa | col -b > archivo.txt


el comando col -b elimina saltos de linea inversos o retrocesos.

- Para encontrar todos los archivos leame, de cambios, how to, guias, ejemplos, muestras y cualquier otra documentacion relevante a algun porgrama instalado use findoc, programa en python de Akkana Peck