Hago un uso extensivo de las funciones para navegar a través del historial de comandos en mi terminal; Me pregunto si también hay alguna forma de navegar por el historial de salida de comandos. (además de mantener un tamaño de hists grande y apoyarse en la tecla pgup)
No puedo simplemente "volver a ejecutar el comando", ya que en mi situación particular cambia la fuente de los comandos; Con frecuencia necesito mirar hacia atrás en la salida de un cambio anterior.
Hacks de bienvenida.
¡Gracias!
Editar 2010:
Le he dado el crédito a 'tee'; entre todos los métodos para registrar su sesión en otro lugar, es el más ampliamente aplicable (es decir, es parte de gnu coreutils y no requiere un shell o utilidad específica para funcionar). Realmente no era lo que estaba buscando, pero me doy cuenta de que tal cosa realmente no existe.
La aproximación más cercana que se me ocurre es usar algo como screen
(byobu / tmux) que registra en el archivo y escribir (y keybind) un comando personalizado para paginar / buscar a través de ese archivo de registro (piense en la less
paginación por solicitud en lugar de la pantalla). Gracias a todos.
Editar 2012:
La respuesta de @Dustin Kirkland es claramente la mejor, al menos en general; el búfer de desplazamiento hacia atrás del terminal es la forma menos intrusiva de navegar por el historial de salida de comandos. Byobu parece tener un gran número predeterminado de líneas de historial guardadas (10K; tmux tiene 2K, pantalla GNU 100), y permite búsquedas de expresiones regulares (un aspecto superficial indica que la pantalla GNU no tiene búsqueda de desplazamiento hacia atrás, y tmux solo tiene búsqueda de texto sin formato).
exit
, cierre la terminal, abra una nueva terminal con Byobu y aún tenga la sesión anterior.Puede usar
tee
para enviar su salida de comando a un archivo y al terminal al mismo tiempo.fuente
Puede usar
script
para registrar su sesión de terminal en un archivo. Si siempre desea que esto suceda, agregue unscript
comando adecuado a su.login
.$ man script
fuente
utilizar
screen -L
después de salir de la sesión de shell (
exit
comando), obtiene un archivo de registro en el mismo directorio que inicióscreen
entonces puede ver la salida con
more
oless -R
fuente
screen
se puede configurar para registrar la salida.Una forma de iniciarlo, dentro de una
screen
sesión en ejecución , es presionar Ctrl- a, luego :, luego ingresarlog
.De
man screen
:fuente
bash mantiene el historial de lo que hiciste, pero no el resultado de los comandos. Potencialmente podría ser enorme y con frecuencia no es útil.
fuente