Si se refiere a comandos ejecutados recientemente, una forma más eficiente es hacer referencia a ellos con números negativos:
!-4; !-3; !-2; !-1
Además, una vez que lo haga, su última entrada del historial contendrá toda la cadena de comandos, por lo que puede repetirla con !!
.
Editar:
si aún no lo ha hecho, familiarícese con la gran función integrada fc
, mencionada por Gilles . (Uso help fc
.) Resulta que también puedes usar números negativos con él, por lo que puedes hacer lo mismo que arriba usando
eval "`fc -ln -4 -1`"
Sin embargo, esto tiene una advertencia: después de esto, la eval
línea se almacena en el historial como el último comando. Entonces, si ejecuta esto nuevamente, ¡caerá en un bucle!
Una forma más segura de hacerlo es usar el modo de fc
operación predeterminado : reenviar el rango seleccionado de comandos a un editor y ejecutarlos una vez que salga de él. Tratar:
fc -4 -1
Incluso puede invertir el orden del rango de comandos: fc -1 -4
history -p \!43{2..5}
para imprimir los comandos 432 a 435 en el terminal, adecuado para copiar / pegar posteriormente.