El asunto de las manpages

El otro día ocupaba hacer algo con tar pero no sabía las flags de memoria, así que decidí leer las manpages, pero poco sabía yo que estaban tan mal estructuradas y llenas de bloat. Estuve un buen rato buscando lo que ocupaba. Entiendo que el Tar de GNU tenga más opciones, pero ¿realmente hay una justificación real para tener tanto texto?


Tar de GNU tiene 1166 lineas, el de FreeBSD 917 y el de OpenBSD solo 174. Había escuchado que las manpages de Linux suelen ser malas comparadas con las de *BSD, pero hasta ahora veo que también están más saturadas.

1 me gusta

Hay que entender que man es diminutivo de manual, entonces con eso ya se puede entender el porque de tanto texto. Un manual suele tener detalles o contenido que para una consulta rápida o duda puntual igual y no es tan relevante en ese momento.

De todas formas es una documentación, y como tal, debe ser tan extensa como se requiera para explicar su funcionamiento, licencia, o cualquier detalle que su desarrollador considere relevante.


Si quieres algo más simple, te recomiendo que le eches un ojo a otros proyectos como tldr, que tiene páginas de ayuda escritas por su comunidad, y tiene múltiples clientes, así que puedes elegir el que más te guste. Como contra no suele explicar todos los parámetros que pudiese llegar.

Aqui un ejemplo de como se ve una consulta del mismo comando tar

Como puedes ver, es muy simple, te dice que hace el comando y que parámetros necesita para cierta acción especifica, no hay explicación por lo que si no sabes que hace igual y tener un manual completo no esta tan de sobra.


La otra es usar la flag --help. La mayoria de programas de terminal suelen tener una opción de ayuda, que suele ser más simple que su manual. De nuevo, como ejemplo con tar:

En este caso apenas supera las 300 lineas, significativamente menos, y se encuentra en el medio de el manual y tldr.


Por ultimo, si tu shell soporta auto-completado, con un tab después de tu guion, puedes ver las opciones disponibles en la mayoría de aplicaciones comunes, aunque esto puede tomar mucho espacio en pantalla.

Ves las opciones y que hacen, sin mayor contexto, es especialmente útil si recuerdas parcialmente el parámetro.

2 Me gusta

Sé que existen estas herramientas, y sí, man es manual. Yo a lo que me refiero es a la gran verbosidad de las manpages de GNU comparadas con los BSD, sobretodo porque muchas veces las manpages de GNU están muy mal organizadas, dificultando la lectura. tldr es una buena ayuda. Cuando pienso en el manual, pienso en el estilo del Unix Programmer’s Manual original, que no es tan lleno de texto innecesario y es bastante conciso.

  1. Sí, los coreutils de GNU no cubren los mismos usos que los *BSD.
  2. ¿Mala organización? Prueba el comando info o pinfo.
  3. GNU is not Unix (no siguen las mismas filosofías).
2 Me gusta

Linux no tiene ninguna relación con los manuales de GNU. Linux no es parte del proyecto GNU. Linux es un programa separado que se dedica a gestionar los recursos de la máquina y sus periféricos, como la tarjeta de red, el ratón, el teclado, los parlantes, etc y se usa junto al sistema GNU.

Pero volviendo a la temática, los manuales que lees con man también los puedes leer con el comando info que tiene una mejor y más moderna organización. Un motivo para que los programas GNU posean una documentación más robusta y extensa, es su compromiso con abordar y cumplir en su totalidad con el mismo y las posibilidades que ofrece. Considera que no basta con enseñar solo lo que tú estás buscando, sino con informar de detalles muy técnicos para usuarios desde los más avanzados hasta los más nuevos y no solo eso, sino también el origen del programa, autoría, derecho de autor y licencia, etc. Si estás buscando algo en específico puedes usar / para comenzar la búsqueda.

Recuerda que es un manual, no un simple índice de comando-explicación como algunos tienen por costumbre.

4 Me gusta

El objetivo de la documentación es que esté lo más completa posible. Te recomiendo combinarla con otras herramientas como grep para realizar filtrados.

En GNU+Linux existen muchas herramientas de sistema que te van a ayudar a realizar búsquedas o filtros avanzados en el output de los comandos.

1 me gusta

Tema movido desde la categoría General a la categoría Software :clap:.

Tema movido de vuelta a General etiquetado como documentación.

Al final supongo que es más cosa mía que algo general, yo simplemente espero que las manpages sean como el Unix Programmer’s Manual, pero GNU tiene otros planes… Pero sigo sosteniendo que las manpages de los *BSD son mejores y aún me rehuso a instalar info.

no seas tan pendejo, usa el keycombo “Shift + 7” para buscar lo que te interesa del manual

1 me gusta

El punto que me estaba planteando no era como buscar o no en una manpage, less que es el manpager default trae búsqueda estilo vi, lo que quería tratar es lo mal paradas que quedan las manpages de GNU comparadas con las de *BSD. No es un problema de encontrar o no, sino de la calidad por parte de los proyectos.