¿Por qué Terminal.app está corrompiendo mi historial de tcsh?

4

He tenido un problema continuo que parece ser específico de OS X y Terminal.app: periódicamente, obtengo basura en mi historial de tcsh que se ve así:

^[[1m^[[4mcomputername:~/Code/emacs-source ( 1827 ) $^[[0m^[[24m logout

De alguna manera, mi indicador (incluidos los caracteres de control de marcado) se almacena como parte del historial de comandos. En mi archivo .history, los comandos corruptos se repiten con el mismo número de comando:

#+1391563259
[1m[4mcomputername:~/Code/emacs-source ( 1827 ) $[0m[24m
#+1391563259
Use "logout" to logout.
#+1391563259
[1m[4mcomputername:~/Code/emacs-source ( 1827 ) $[0m[24m logout 

Esto parece ser el resultado de cerrar las ventanas y pestañas de Terminal.app, pero no estoy seguro de por qué. Para solucionarlo, ya que tengo la combinación de historial habilitada, he tenido que recurrir a cerrar todas las sesiones de tcsh y eliminar los comandos corruptos de .history. ¿Hay alguna forma de evitar que esto suceda en primer lugar?

    
pregunta Asher L. 07.02.2014 - 19:50

2 respuestas

0

Me había olvidado de este problema, pero aquí hay una actualización. La función de fusión thisth savehist no es atómica, por lo que cerrar varias sesiones simultáneamente puede provocar la corrupción del archivo histórico:

enlace

No sé si esto se ha solucionado o se solucionará; Finalmente me cansé de este y otros problemas de tcsh y cambié a bash.

    
respondido por el Asher L. 12.06.2015 - 23:41
0

¿Estás cortando / pegando comandos y recogiendo algunos de tus avisos por accidente?

No es exactamente la respuesta que está buscando, pero lance sed -i.bak -e "s / \ x1b [[0-9;] {1,5} m // g" .history en su .logout o cron y no debería tener que limpiarlo de nuevo manualmente.

    
respondido por el Jason S 11.06.2015 - 23:02

Lea otras preguntas en las etiquetas