Cuando estoy usando iTerm 2 (con zsh), y se ejecuta un comando en el indicador, cada minuto o menos ^ @ (carácter NULO) se muestra en el terminal. A continuación se muestra un ejemplo, utilizando socat
, pero otros comandos producen el mismo resultado:
11/03/2016 09:59:36 socat [1514] D data loop: sock1- & gt; eof = 0, sock2- & gt; eof = 0, closing = 0, wasaction = 1, total_to = {0.000000} 2016/03/11 09:59:36 socat [1514] D select (8, & amp; 0xa0, & amp; 0x0, & amp; 0x0, NULL / 0.000000) ^ @ ^ @ ^ @ ^ ^ ^ @ @ ^ ^ ^ ^ ^ ^ @ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ @ ^ @ ^ @ ^ @ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^
En este ejemplo, ^ @ se escribe al final de la última línea cada minuto más o menos.
Si ejecuto el mismo comando con la aplicación integrada de terminal de mac os / bash, la salida está limpia.
¿Alguna idea de dónde vienen estos personajes nulos y cómo deshacerse de ellos?
Respuestas:
Los caracteres nulos son una función anti-inactiva para mantener la conexión con los servidores antiguos.
Vaya a iTerm2 - & gt; Preferencias - & gt; Perfiles - & gt; [selecciona tu perfil] - & gt; Pestaña Sesión - & gt; desmarque la casilla de verificación "Cuando esté inactivo, enviar código ASCII".
fuente