Uso el man
comando todo el tiempo cuando quiero obtener información sobre un comando específico. Pero esto no me ayuda demasiado cuando ese comando específico es un shell incorporado. Por ejemplo:
man cd
devoluciones:
No manual entry for cd
Mi pregunta es: es posible hacer man
también el trabajo de toda la cáscara del orden interna comandos (como cd
, alias
, history
, etc.), y las palabras clave (como if
, while
, [[
, {
, etc.)?
command-line
manpage
Radu Rădeanu
fuente
fuente
echo
es un comando incorporado pero tiene una página de manual?echo
también es un comando del sistema (ejecutable) ubicado en/bin
. Puedes verificar esto usandotype -a echo
. Lo mismo sucede contime
y tal vez con otros.info bash
?Respuestas:
El
help
comando cuando se usa con la-m
opción puede mostrar información sobre comandos incorporados en formato de pseudo-página de manual. Por ejemplo:mostrará información sobre el
cd
comando en un formato casi exactamente como en una página de manual.A partir de este comando, puede ajustar el
man
comando en una función en su.bashrc
archivo de la siguiente manera:Después de esto
man
, funcionará también para todos los comandos y palabras clave incorporados de shell. Por ejemplo:mostrará:
fuente
man time
vs.man 1 time
zsh
usuario, no tiene tanta suerte: bugs.launchpad.net/ubuntu/+source/zsh/+bug/1242108 (no hay páginas de manual instaladas)info
,help -m
¿Por qué no podemos simplemente tener buenas páginas de manual en estos días? ¡Gracias de todos modos!man type
no produce una descripción de las opciones "-a" o "-t" en Ubuntu 14.04.4 .... y, sin embargo, estás ahí!Contiene fragmentos de ayuda para los comandos incorporados, aunque en un formato un poco más condensado que el
help
equivalente.fuente
Puede instalar páginas de manual sobre el uso de un sistema POSIX para el desarrollo como,
Proporcionará páginas de manual para los componentes de shell.
Ahora intenta,
fuente
Esta solución funciona perfectamente bien, pero también es una broma porque lo primero que pensé cuando leí tu pregunta fue '¿Quién sigue usando literalmente al hombre desde la línea de comando? ¿No todo el mundo solo busca en Google la página de manual que desean (para que puedan obtener cosas elegantes como desplazamiento ilimitado)? '. Luego me di cuenta de que los sitios en los que Google usualmente tienen ambos tipos de comandos, así que ¿por qué no solo usarlos para proporcionar una interfaz de página de manual uniforme en todos los comandos? Por lo tanto, nació esta diversión.
Esto requiere una conexión a Internet para cualquier entrada que no haya buscado al menos una vez. También necesita estas dos pequeñas aplicaciones que faltan en una instalación predeterminada de Ubuntu:
Estos no son absolutamente necesarios, pero ayudan a que se vea un poco mejor. Tidy limpiará el HTML y html2text formateará ese html como texto formateado (que generalmente es bastante trivial, ya que la mayoría de estos sitios ya tienen formato de texto y solo están envueltos en etiquetas <pre>.
Ahora todo lo que necesita hacer es agregar esto al final de
~/.profile
:Después de cerrar sesión y volver a ingresar, debería poder escribir esto:
y mostrará la página del manual para
cd
.Esto utiliza un directorio de datos (/ usr / share / iman) para minimizar nuestros requisitos de red (por lo que funcionará para las entradas que ya ha encontrado antes, incluso sin la conexión; también para minimizar la carga en este sitio aleatorio de páginas de manual de Linux Encontré con las entradas del sistema que también queremos en él). Si ya no usa esto, querrá eliminarlo para recuperar espacio en disco.
Con suerte, el resto es bastante sencillo.
fuente
iman
funciones integradas, su función devuelve el mismo resultado queman bash-builtins
.