Tabla de contenidos
Todo lo que necesita saber sobre Linux está en sus páginas de manual. Por ejemplo, puede buscar un comando para realizar una tarea, incluso si no sabe cómo se llama. Pero, ¿cómo puedes encontrar las páginas de manual? A continuación se muestran algunos trucos.
Manual integrado de Linux
Hay una vieja broma de Linux (de la era dorada de Unix) de que el único comando que necesita saber es man
el punto de entrada del sistema al manual del usuario . Hay una pizca de verdad en esto, pero incluso man
puede resultar confuso al principio. O, más exactamente, encontrar la información que necesita puede resultar confuso.
¿Alguna vez ha sabido lo que quería hacer, pero no sabía el nombre del comando que haría la tarea? Probablemente todos hemos pasado por eso. Es como intentar buscar una palabra en el diccionario cuando no la conoces.
Entonces, ¿cómo puedes encontrar lo que estás buscando? Bueno, hay formas de sortear este dilema con man
.
Los números son otro tema de estudiantes de primer año. ¿Qué son y qué significan? Verá cosas similares man(2)
o man(5)
citadas en la documentación y en Internet. También verá referencias a comandos seguidos de números, como mount(2)
y mount(8)
. Seguramente no puede haber más de un mount
comando, ¿verdad? Como veremos, los números son importantes y relativamente simples.
Hablando de simple, buscar dentro man
es bastante fácil una vez que sabes cómo hacerlo. De hecho, hay algunas formas interesantes de buscar y navegar man
. ¡Vamos a encenderlo y echar un vistazo!
Cómo abrir el manual
Para usarlo man
, escribe man
en la línea de comando, seguido de un espacio y un comando de Linux. man
abre el manual de Linux en la «página de manual» que describe ese comando, si puede encontrarlo, por supuesto.
Escribamos lo siguiente y veamos qué man
dice sobre man
:
hombre hombre
Se man
abre la página de manual de .
Como puede ver, esta es la man(1)
página.
Siga estos consejos para navegar por la página:
- Para desplazarse por la página de manual una línea a la vez: Utilice la rueda de desplazamiento del mouse o las teclas de flecha hacia arriba y hacia abajo y Enter.
- Para moverse por la página de manual una pantalla a la vez: Presione la barra espaciadora y las teclas PgDn y PgUp.
- Para ir directamente a la parte superior o inferior de la página de manual: Presione las teclas Inicio y Fin.
Si presiona H, ingresa a la sección de ayuda y ve una tabla de combinaciones de teclas alternativas que puede usar. Los enumerados anteriormente probablemente se sentirán más naturales para la mayoría de las personas.
Para salir man
, simplemente presione Q.
La anatomía de una página de hombre
En la parte superior de la página, verá los títulos «Nombre» y «Sinopsis». Existe una convención para el diseño de las páginas de manual. Hay páginas de manual para comandos, programas y funciones de programación (rutinas de biblioteca). No verá todos estos encabezados en todas las páginas de manual, porque algunos de ellos solo se aplican a ciertos tipos de comandos.
Los siguientes son algunos de los títulos que puede ver:
- Nombre: el nombre del comando que describe la página de manual.
- Sinopsis: un resumen del comando y su sintaxis.
- Configuración: detalles de configuración para un dispositivo.
- Descripción: Una explicación de lo que hace el programa.
- Opciones: una descripción de las opciones de la línea de comandos que acepta el comando.
- Estado de salida: posibles valores de estado de salida para el comando y qué puede hacer que se utilicen.
- Valor de retorno: si la página del manual es para una rutina de biblioteca, esto describe el valor que la rutina de biblioteca puede enviar de vuelta a la función que llamó a esa rutina.
- Errores: una lista de los valores que se pueden colocar en
errno
caso de error . - Entorno: una lista de las variables de entorno que afectan el comando o programa, y de qué manera.
- Archivos: una lista de los archivos que utiliza el comando o programa, como los archivos de configuración.
- Atributos: un resumen de varios atributos del comando.
- Versiones: detalles del kernel de Linux o las versiones de la biblioteca donde una llamada al sistema o una función de biblioteca apareció por primera vez o cambió significativamente de versiones anteriores.
- Conforme a: una descripción de cualquier estándar con el que el comando podría cumplir, como POSIX .
- Notas: Notas varias.
- Errores: problemas conocidos.
- Ejemplos: uno o más ejemplos que demuestran el uso del comando.
- Autores: Las personas que escribieron o mantienen el comando.
- Consulte también: Lectura recomendada relacionada con el comando o tema.
Las secciones del hombre
Si se desplaza hacia abajo un par de páginas, verá una lista de las secciones en el manual.
Las secciones son:
- Comandos generales: comandos que usa en la línea de comando.
- Llamadas al sistema: funciones que proporciona el núcleo que un programa puede llamar.
- Funciones de biblioteca: los programas de funciones pueden llamar a bibliotecas de códigos (principalmente el estándar C).
- Archivos especiales: generalmente dispositivos, como los que se encuentran en / dev, y sus controladores.
- Los formatos de archivo y convenciones: Formatos de archivos, como la
passwd
,cron
mesa, ytar
los ficheros de archivo. - Juegos: descripciones de comandos, como
fortune
, que muestran citas de una base de datos cuando los ejecuta. - Varios: descripciones de cosas como inodos, parámetros de arranque y él
man
mismo. - Administración del sistema: Comandos y demonios generalmente reservados para
root
trabajar. - Rutinas del kernel: información relacionada con el funcionamiento interno del kernel. Esto incluye interfaces de función y variables útiles para los programadores que escriben controladores de dispositivos, por ejemplo. En la mayoría de los sistemas, esta sección no está instalada.
Cuando ve un comando seguido de un número, se refiere a la descripción de ese comando en esa sección del manual. Por ejemplo, se man(1)
refiere a la entrada en la sección uno del manual que describe el man
comando.
En la imagen de arriba, verá una referencia a man(7)
. Esto significa que hay más información sobre man
en otra sección. Cuando abrimos la página de manual por primera vez, se mostró man(1)
. Si escribe solo man
sin número de sección, man
busca todas las secciones en orden, buscando una entrada para el comando que escribió. Por supuesto, lo encontró man(1)
antes man(7)
.
Si desea forzar la man
búsqueda de una entrada de una sección específica, debe incluir el número de sección en la línea de comando.
Por ejemplo, escribimos lo siguiente para abrir la entrada man
en la sección siete:
hombre 7 hombre
El manual se abre a la entrada del hombre en la sección siete.
Esta página de manual proporciona instrucciones para escribir páginas de manual. Describe el formato de archivo y las macros que puede utilizar para hacer parte del trabajo por usted. La man(1)
página de la sección uno que vimos anteriormente describe cómo se usa man
.
Cómo buscar entradas en secciones
Normalmente, si simplemente desea saber cómo usar un comando, no tiene que dar un número de sección. man
encontrará la entrada estándar que describe cómo usar ese comando en la sección uno del manual. A veces, sin embargo, es necesario abrir una entrada de comando en una sección en particular porque desea información diferente.
Puede averiguar fácilmente qué secciones del manual contienen entradas para un comando. Cada página de manual tiene un título y una breve descripción. La -f
opción (whatis) busca los títulos de las páginas y devuelve una lista de coincidencias.
Para este ejemplo, escribimos lo siguiente:
hombre -f hombre
Las dos páginas de manual de man
se enumeran junto con sus números de sección y descripciones breves. Sin embargo, tenga cuidado: algunas entradas tienen el mismo nombre, pero describen diferentes comandos y funciones.
Por ejemplo, escribimos lo siguiente:
man -f printf
Parece que se encontraron dos entradas para printf
: la primera en la sección uno y otra en la sección tres. Sin embargo, estos son comandos diferentes. La página de manual de la sección uno describe el comando de la línea de printf
comandos, que formatea la salida en la ventana del terminal . La página del manual en la sección tres describe la printf
familia de funciones de biblioteca en el lenguaje de programación C .
También es posible buscar en las descripciones breves, así como en los títulos de las páginas. Para hacerlo, usa la -k
opción (apropos). Esto también coincidirá con las apariciones del término de búsqueda dentro de otras palabras más largas.
Escribimos lo siguiente:
man -k printf
Muchos de estos comandos se describen en las mismas páginas de manual porque su funcionalidad principal es básicamente la misma. La página de manual de vprintf
describe la funcionalidad de 10 de los comandos enumerados en la imagen de arriba.
Puede aprovechar esta funcionalidad para buscar información relacionada con lo que está tratando de lograr, incluso si no sabe el nombre del comando que desea usar.
Supongamos que desea cambiar la contraseña de una cuenta de usuario. Podemos buscar cualquier comando que mencione «usuario» en los títulos o descripciones de la página de manual. Luego, podemos canalizarlo grep
para buscar entradas que contengan «contraseña».
Para hacer esto, escribimos lo siguiente:
man -k 'usuario' | grep contraseña
Debido a que incluimos la palabra «usuario» entre comillas simples e incluimos un espacio al final, solo encontrará coincidencias para «usuario», no para «usuarios». Un vistazo rápido a los resultados de la búsqueda nos muestra que el posible candidato es passwd
.
Debido a que es una página de manual de la sección uno y no necesitamos incluir el número de sección en el comando, escribimos lo siguiente:
hombre passwd
Digamos que necesitamos un comando que cuente la cantidad de palabras en un archivo de texto. Escribimos lo siguiente para ver si existe algo así:
hombre -k palabra | conteo de grep
Para averiguar todo lo que hay que saber sobre el conteo de palabras, escribimos este comando:
hombre wc
Hablando de wc
eso, también podemos usar la -k
opción (apropos) con un solo punto ( .
) como objetivo de búsqueda, que coincidirá con todo. Si lo canalizamos wc
y usamos la -l
opción (líneas), nos dirá cuántas páginas de manual hay en la computadora.
Para hacer todo esto, escribimos el siguiente comando:
man -k. | wc -l
Hay 6.706 páginas de manual en esta computadora Ubuntu, pero no se sorprenda si el número es diferente en la suya. Puede variar según los paquetes de software y las utilidades que tenga en su máquina y las páginas de manual que estén preinstaladas.
Buscando en una página de manual
También puede buscar hacia adelante o hacia atrás desde su posición actual dentro de una página de manual.
Para este ejemplo, escribimos lo siguiente para abrir la página de manual del history
comando:
historia del hombre
Para buscar hacia adelante, presionamos la barra diagonal ( /
) y luego escribimos la palabra «evento». El objetivo de búsqueda aparece en la parte inferior de la ventana de la terminal, y presionamos Enter para iniciar la búsqueda.
La ventana muestra el primer resultado de las coincidencias encontradas y están resaltadas.
Presione “n” para moverse de un resultado a otro hacia la parte inferior de la página. Para buscar hacia atrás a través de la página de manual, presione «N»; esto lo llevará de regreso a la parte superior de la página.
Para activar y desactivar el resaltado, presione Esc + U.
Si está cerca de la parte inferior de la página de manual y desea buscar hacia arriba, presione el signo de interrogación (?) Y luego escriba el término de búsqueda. Buscamos «entrada».
Nuevamente, se resaltan los resultados coincidentes.
Para buscar el siguiente resultado coincidente, presione “n” para moverse hacia el principio de la página del manual. Presione «N» para ir al resultado de coincidencia anterior y moverse hacia el final de la página del manual.
Hay otra forma de buscar en una página de manual. Oculta todas las líneas que no contienen una coincidencia con su término de búsqueda, por lo que es mejor usar números de línea con esta técnica.
Si escribimos “-N” y presionamos Enter, podemos ver los números de línea en la página del manual.
Presionamos el signo comercial (&), escribimos nuestro término de búsqueda (número) y luego presionamos Enter.
Solo se muestran las líneas que contienen nuestro término de búsqueda.
Es fácil hojearlos y detectar cualquiera que parezca interesante. Creemos que la línea 292 parece prometedora, por lo que queremos ir a esa sección de la página de manual y comprobarla.
Para ver todas las líneas nuevamente, presionamos el signo y (&), y luego presionamos Enter.
Escribimos «292» y luego «g» para ir a esa línea.
Tan pronto como escribimos «g», se nos lleva a la línea 292 (por lo que la «g» no aparece en la imagen de arriba). La línea 292 se muestra en la parte superior de la ventana de la terminal.
Puede presionar «-n» y presionar Enter para eliminar los números de línea.
Lea el fabuloso manual
Hay una gran cantidad de información en las páginas de manual. Incluso con los comandos que cree que conoce bien, es seguro que existen otras opciones de las que nunca ha oído hablar.
Definitivamente también encontrará comandos que no sabía que existían. Con tantas formas diferentes de buscar y rastrear información, es increíble tenerlo todo al alcance de la mano.