man y xman
La mayoría de los programas y aplicaciones incluyen gran número de opciones, con la consiguiente dificultad de recordarlas. Por lo tanto, se hace necesario algún tipo de documentación que sea fácilmente accesible y comprensible.
La principal documentación dentro de los sistemas UNIX son las denominadas páginas del manual de UNIX o páginas del manual del sistema, las cuales pueden verse de forma paginada a través del comando man.
Estas páginas de ayuda ofrecen la sintaxis y descripción detallada de comandos, utilidades y funciones, incluyendo todas sus opciones. La descripción puede incluir ejemplos de utilización y otra información como archivos utilizados y comandos relacionados.
Las páginas del manual se ubican en directorios en función del idioma y a su vez, se organizan en secciones. Todo no está traducido al español y lo que hay en español de las páginas del manual del sistema están en los paquetes de debian: manpages-es y manpages-es-extra.
Como nota interesante, señalar que el proyecto para la documentación oficial de sistemas GNU/Linux llamado tlpd (The Linux Documentation Project) se encarga de coordinar la creación, mantenimiento y desarrollo de las páginas man en Inglés y su correspondiente versión española es es.tldp.org.
El manual está dividido en ocho secciones numeradas, y organizadas como sigue:
- Sección 1 Comandos generales
- Sección 2 Llamadas al sistema
- Sección 3 Librerías de funciones (C, C++, Perl, etc.)
- Sección 4 Archivos especiales (normalmente los situados en el directorio /dev)
- Sección 5 Archivos de configuración
- Sección 6 Juegos y salvapantallas
- Sección 7 Miscélanea
- Sección 8 Comandos de administración del sistema y demonios
Si queremos consultar en las páginas del manual la sintaxis de un comando, o para qué sirve, ejecutaríamos la siguiente orden:
$ man comando
En ocasiones el mismo nombre puede tener entradas en distintas secciones, por ejemplo, chmod que es un comando general para cambiar los permisos de los ficheros, pero también es una llamada al sistema.
Al comando man se le puede pasar el número de la sección donde buscar la orden, si esto no se hace, buscará en las distintas secciones de menor a mayor, y nos mostrará la primera coincidencia que encuentre. Así por ejemplo, para obtener la página del manual del comando chmod, podemos ejecutar cualquiera de las dos ordenes siguientes:
$ man chmod
$ man 1 chmod
Pero para pedir ayuda de la llamada al sistema chmod, tendremos que especificar obligatoriamente la sección:
$ man 2 chmod
Lo primero que aparece en las páginas del manual es una breve descripción del comando y a continuación su sintaxis. Para expresar esta última se siguen los siguientes convenios:
- [x] -> indica que x es opcional
- [x|y] -> indica opcionalidad, es decir, que se puede poner x ó y, pero también nada, por ir entre corchetes.
- {x,y} -> indica obligatoriedad, es decir, que se puede poner x ó y, pero obligatoriamente una de las dos.
- x... -> indica que x se puede repetir tantas veces como queramos.
- [-xyz] -> es una forma de expresar opciones, y quiere decir que no tenemos por qué poner opciones, pues los corchetes indican opcionalidad, pero si ponemos opciones, lo podemos hacer como queramos, una sola cualquiera, dos cualesquiera y en cualquier orden, etc.
El formato genérico del uso del comando man es el siguiente:
man [sección] comando...
La información se muestra paginada, normalmente a través del paginador less que veremos más adelante. Para salirnos del paginador y por lo tanto del comando man, pulsamos la tecla q.
Por último, también existe una interfaz gráfica para consultar las páginas del manual, y se denomina xman:
$ xman &
Los comandos con interfaz gráfica los ejecutaremos con el signo & al final, para que se ejecuten en segundo plano y nos deje libre la terminal de comandos. Esto se verá más adelante.
Licencia: licencia de software libre GPL