Kiedy korzystam z iTerm 2 (z zsh), a polecenie jest uruchamiane w wierszu polecenia, co minutę pojawia się ^ @ (znak NULL) na terminalu. Poniżej znajduje się przykład użycia socat
, ale inne polecenia dają taki sam wynik:
2016/03/11 09:59:36 socat [1514] Pętla danych D: sock1-> eof = 0, sock2-> eof = 0, close = 0, wasaction = 1, total_to = {0,000000} 2016/03/11 09:59:36 socat [1514] D wybierz (8, i 0xa0, i 0x0, i 0x0, NULL / 0,000000) ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @
W tym przykładzie ^ @ jest zapisywane na końcu ostatniego wiersza co około minutę.
Jeśli uruchomię to samo polecenie z wbudowaną aplikacją Mac OS Terminal / bash, dane wyjściowe będą czyste.
Wiesz, skąd pochodzą te znaki zerowe i jak się ich pozbyć?
Odpowiedzi:
Znaki zerowe to funkcja zapobiegająca bezczynności, która utrzymuje połączenie ze starymi serwerami.
Przejdź do iTerm2 -> Preferencje -> Profile -> [wybierz swój profil] -> zakładka Sesja -> usuń zaznaczenie pola wyboru „W stanie bezczynności wyślij kod ASCII”.
źródło