#4sysadmins

Inicio » Comandos para la ayuda de otros comandos

Comandos para la ayuda de otros comandos

man : Es el paginador del manual del sistema. A menos que se especifique, man devuelve la primera página encontrada del comando argumentado. Por lo tanto también nos permite especificar la sección concreta de un comando, especificando su número.

man [opciones] [sección] comando

  • Desplegar información sobre el uso del comando passwd:
$man passwd
  • Desplegar información sobre el formato del archivo /etc/passwd
$man 5 passwd

[Secciones]:

  • 1. Programas ejecutables y comandos de consola
  • 2. Llamadas del sistema proporcionadas por el kernel
  • 3. Llamadas de biblioteca proporcionadas por bibliotecas de programas
  • 4. Archivos de dispositivos (almacenados generalmente en /dev)
  • 5. Formato de archivos
  • 6. Juegos
  • 7. Miscelánea (paquetes de macros, convenciones,etc…)
  • 8. Comandos de administrador del sistema (programas ejecutados en su mayor parte o exclusivamente por root)
  • 9. Rutinas del kernel

[Opciones]:

  • Presentar secuencialmente todas las páginas de manual para el comando especificado: -a
  • Realizar una búsqueda de palabras clave pasada como patrón entre las descripciones breves de las páginas man y presenta las páginas que contienen dicho patrón (= apropos): -k
  • Es igual a ‘man -k’ pero hay que ser exactos en la elección del patrón, es decir pasar el nombre completo del comando a buscar, desplegará entonces todas aquellas páginas man que coincidan con ese comando (= whatis) : -f
  • Mostrar la ruta para la página man del comando pasado como argumento: -w

 

info : El comando info utiliza un formato de hipertexto, lo que nos permite movernos entre las secciones de un comando.

  • Mostrar información rápida sobre el comando cd:
$info cd

 

help : No todos los comandos disponen de una ayuda rápida, pero es útil, concreta y concisa.

$passwd --help

 

history : No es precisamente un comando con el que encontraremos la forma de utilizar un comando ni información sobre él, pero si que podremos comprobar los comandos que se han ido ejecutando en el shell. Sin opciones, history desplegará la lista de comandos ejecutados en bash por el usuario. Si cambiamos de usuario veremos que la lista es otra, ya que los archivos de historia son independiente a cada usuario, por defecto se usa el valor de la variable $HISTFILE que apunta a /home/<usuario>/.bash_history. Podemos pasar como argumento el nombre de otro archivo o modificar el valor de $HISTFILE de manera que utilicemos otro archivo distinto por defecto. Si pasamos un número como argumento, history solo desplegara los ‘n‘ últimos comandos ejecutados. Existen diferentes variables con las que podremos configurar el historial de comandos de bash. Por ejemplo por defecto solo se muestra una lista de comandos ejecutados precedidos por un número que indica el número de comando, pero podemos hacer que además, nos muestre la fecha y hora a la que fue ejecutado el comando, algo muy útil en sistemas en los que se comparte un usuario. Para lograr esto podríamos exportar en el archivo ~/.bashrc del usuario la siguiente variable:

export HISTTIMEFORMAT="%d/%h - %H:%M:%S "

Con lo que conseguiríamos un aspecto de líneas de history como esta:

304 23/feb - 14:29:55 info cp

Otras variables importantes son aquellas que definen el número de comandos y de líneas a guardar en el archivo del histórico, estas variable son $HISTSIZE y $HISTFILESIZE respectivamente. Como valor recibirán un único número que indicarán los comandos y el número de líneas a guardar.

Podemos desactivar el uso del historial de comandos si damos el valor 0 a la variable $HISTSIZE

La sintaxis del comando history es básica es decir solo acepta opciones tras el comando y alguna de ellas podrían ser:

  • Los comandos ejecutados en la sesión actual no son añadidos al archivo de histórico hasta que salimos de la sesión pero si queremos hacerlo de inmediato podemos usar la opción -a
  • Escribir la historia en curso en el archivo de histórico sobreescribiendo el contenido: -w
  • Ejecutar un comando determinado concretando su número de línea en el archivo histórico: !<num_línea>
  • Eliminar una línea concreta de nuestro archivo histórico: -d <num_línea>
  • Limpiar el archivo de histórico: -c

 

fc : Otro comando que puede ayudarnos a leer el historial de comandos ejecutados y a ejecutar uno en concreto. Si ejecutamos fc sin opciones, se abrirá el editor de texto que tengamos seteado en la variable FCEDIT o EDITOR (si FCEDIT no está definida) mostrando la última orden ejecutada. En caso de no tener ninguna de las dos Vi será el editor ejecutado. Si queremos mostrar los últimos comandos ejecutados por stdout (hasta un máximo de 16) bastará con pasar la opción -l. Podemos invertir el orden acompañando -l de -r.

Otras opciones:

  • Ver los últimos ejecutados a partir de la orden número 60 en adelante (hasta el último ejecutado):
$ fc -l 60
  • Ver el rango de comandos ejecutados que va desde la línea número 300 a la 400 del archivo ~/.bash_history:
$ fc -l 300 400
  • Ver los últimos 10 comandos ejecutados:
$ fc -l -10
  • Ejecutar un comando pasando el número que a él corresponde en el archivo histórico:
$ fc -s <número>

 

watch: Este comando nos permite ejecutar un comando concreto de forma reiterada. Esto nos permitirá monitorizar la salida del comando cada cierto tiempo (es similar a tail). watch se ejecuta por defecto cada 2 segundos. Algunos ejemplos:

  • Monitorizar el contenido del directorio actual cada 2 segundos (opción por defecto). Los archivos nuevos o eliminados se irán viendo como aparecen o desaparecen por la pantalla (stdout):
$ watch ls -l
  • Resaltar los cambios ocurridos entre la ejecución anterior del comando y la actual: -d
  • Monitorizar el sistema identificando los cambios entre ejecución y ejecución:
$ watch -d -n 10 vmstat -sSM

 


Deja un comentario, Gracias!

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: