Cada respuesta aquí, por lo que puedo decir, no es portátil. Para una opción portátil, considere la garantía POSIX fc
:
$ man fc
−e editor Use el editor nombrado por editor para editar los comandos. La cadena del editor es un nombre de utilidad, sujeto a búsqueda a través de lavariable PATH ... El valor en lavariable FCEDIT se usará por defecto cuando −e no se especifica. Si FCEDIT es nulo o sin definir , ed se utilizará como editor.
−l (La letra ell.) Enumere los comandos en lugar de invocar un editor en ellos. Los comandos se escribirán en la secuencia indicada por el primer y el último operando, según sea afectado por −r , con cada comando precedido por el número de comando.
−n Suprime los números de comando cuando se enumera con −l .
−r Invierte el orden de los comandos enumerados (con −l ) o editados (sin −l ni −s ) .
−s Vuelva a ejecutar el comando sin invocar un editor.
Operandos
primero , último
Seleccione los comandos para listar o editar. El número de comandos anteriores a los que se puede acceder estará determinado por el valor de lavariable HISTSIZE . El valor de primero o último o ambos será uno de los siguientes:
[+ o-] número
Un número positivo (o negativo ) que representa un número de comando; los números de comando se pueden mostrar con laopción −l ... Por ejemplo, −1 es el comando inmediatamente anterior ...
Cuando la opción −l se usa para enumerar comandos, el formato de cada comando en la lista será el siguiente:
"%d\t%s\n", <line number>, <command>
Si se especifican las opciones −l y −n , el formato de cada comando será:
"\t%s\n", <command>
Si el consiste en más de una línea, las líneas después de la primera se mostrarán como:
"\t%s\n", <continued-command>
Pero asegúrese de usar -l o -e si SOLO quiere ver / editar sus comandos. De manera predeterminada, fc
se abrirá la lista de comandos solicitada en FCEDIT (tenga en cuenta que es distinta de la variable de entorno EDITOR ) y, cuando FCEDIT se cierre , fc
ejecutará los comandos editados.
De todos modos, específicamente la respuesta a esta pregunta podría ser:
% fc -l -1
O sin números de línea:
% fc -ln -1
O los últimos cinco comandos en orden inverso:
% fc -lrn -1 -5
En tu buscapersonas:
% fc -lrn -1 -5 |$PAGER
Para su última llamada a fc
:
% fc -l fc