Con la Terminal en macOS, puede ahorrar mucho tiempo y escribir menos usando las funciones de historial de comandos integradas en el shell de la Terminal. El shell mantiene un registro de los comandos que ejecuta, y puede acceder a este historial con unas simples pulsaciones de teclas para ejecutar comandos nuevamente o editarlos para que no tenga que volver a escribirlos.
Puede verificar qué comandos hay en su historial en cualquier momento ejecutando el history
dominio. cuando escribes history
y presione Retorno, Terminal muestra una lista de los comandos en la lista de historial. Por ejemplo:
1 ls
2 cd ..
3 ls
4 cd kirk
Cada línea incluye el número del comando (del primero al último) y el comando en sí. Terminal incluye todos los comandos, hayan tenido éxito o no. Esto significa que en el historial aparecerán errores o errores ortográficos.
Limitar la lista de historial
Hay varias formas de mostrar su lista de historial. En la mayoría de los casos, querrá ver los comandos más recientes. Una forma de hacer esto es ejecutar el history
comando con un argumento que dice cuántos comandos desea mostrar.
Por ejemplo, history
5
le dice al shell que muestre los comandos comenzando con el quinto en la lista de historial. Puede introducir cualquier número como argumento para el history
dominio; si ingresa un número que no es válido (lo más probable es que su lista no sea tan larga como el número que ingresó), la Terminal responderá con fc: no such event
.
Atajos para ahorrar tiempo
Como se discutió en un artículo separado, puede moverse hacia arriba o hacia abajo en su lista de historial presionando las teclas de flecha. Esta es la forma más fácil de volver a ejecutar un comando que ejecutó recientemente. Pero si su comando está más atrás en la lista, hay formas más rápidas de decirle al shell cuál ejecutar.
Supongamos que ha mostrado su larga lista de historial y parte de ella se ve así:
329 locate Walden
330 history
331 ls -l
Si desea volver a ejecutar el comando locate Walden
escribe !329
. El signo de exclamación (!
) es un atajo para un comando en la lista de historial. Si ingresa un número después (sin espacios entre ellos), la Terminal ejecuta el comando que tiene ese número absoluto en el historial.
Números relativos: Otra forma de especificar un comando anterior es usando un pariente número, o el enésimo comando de vuelta desde el final de la lista. Por ejemplo, si su historial tiene 200 entradas y desea ingresar el quinto comando desde la entrada número 200, ingrese !-5
.
Caracteres: Puede decirle al shell que ejecute el último comando que comienza con una cadena específica de caracteres. Por ejemplo, otra forma de ejecutar el mismo locate Walden
el comando sería escribir !loc
(sin espacio después del signo de exclamación).
Ingrese la cantidad de caracteres que desee después del signo de exclamación. El shell se detendrá en la primera aparición de una cadena que coincida con estos caracteres. En el ejemplo que acabo de mencionar, podría haber escrito !lo
ya que no había otros comandos que comenzaran con esas letras. Pero si simplemente hubiera entrado !l
el ejemplo habría ejecutado el comando 331, el ls -l
comando, porque este habría sido el primer partido.
Nota del editor: Partes de este artículo fueron adaptadas de La línea de comandos de Mac OS X: Unix bajo el capó, de Kirk McElhearn (2004; reimpreso con permiso de Sybex). Se actualizó para reflejar los cambios en la Terminal para macOS Big Sur.