Siendo un ávido usuario de Linux antes de comprar una MacBook Pro, normalmente tengo varias pestañas de terminal abiertas al mismo tiempo.
En el pasado, los bloqueos y reinicios generalmente arruinaban mi flujo de trabajo y la mayoría de mis respectivos historiales de pestañas. Busqué formas de resolver este problema pero siempre aparecía vacío; Aparte de diversas técnicas que las combinaciones utilizadas de herramientas como ssh
, screen
, tmux
, y se requiere un servidor privado virtual (o similar).
Una de mis cosas favoritas sobre el uso de mi MacBook Pro para escribir scripts, y el uso de herramientas CLI, etc. es que mis sesiones de terminal persisten más allá de bloqueos y reinicios por defecto. De hecho, acabo de restaurar una copia de seguridad de hace casi 2 años, y cuando inicié sesión por primera vez, me presentaron mi antiguo escritorio y tres bash
shells que comprendían un proyecto en el que estaba trabajando hace tanto tiempo.
Me gustaría saber cómo OS X hace posible esta función. ¿Alguien aquí tiene una idea de cómo funciona?
/etc/bashrc_Apple_Terminal
? Me gusta especialmente eso.# The default behavior arranges to save and restore the bash command history independently for each restored terminal session. It also # merges commands into the global history for new sessions.
Es algo más que he intentado implementar antes, pero fue en vano.trap
para capturar el final de una sesión y almacenar su historial en un archivo específico de pestaña / sesión.Por lo que puedo decir, solo guarda el texto en el búfer de desplazamiento de cada ventana. En realidad, no guarda el estado de lo que se estaba ejecutando en las terminales; solo comienza un nuevo shell después del reinicio.
Como experimento, defina una variable en su shell y verifique su valor:
Luego reinicie y verifique nuevamente el valor de la variable. Verás que ya no está definido.
fuente