Algumas possibilidades vêm à mente:
- o programa detectou (por qualquer razão que a tela é grande e reduzirá a largura das colunas para algum propósito obscuro dos desenvolvedores
- o programa não detecta o tamanho da tela corretamente. Como sugerido por @ tom-zych , isso pode acontecer se o programa não responder adequadamente a uma janela. redimensionamento do evento. As soluções oferecidas em Como resolver o problema que uma tela do Terminal está desarrumada? (geralmente após um redimensionamento) são úteis para casos diferentes do programa final (
ngrep), por exemplo, o programaresizeé principalmente útil em casos em que o terminal não atualiza seu tamanho como mostrado porstty -a.
No primeiro caso, a página de manual para ngrep (8) é de pouca ajuda, já que o único lugar que ele menciona a largura da coluna é usando uma opção:
-ccols
Ignore the detected terminal width and force the column width to the specified size.
e (repetindo-se)
-ccols
Explicitly set the console width to cols. Note that this is console width, and not the full width of whatngrepprints out as payloads; depending on the output modengrepmay print less than cols bytes per line (indentation).
mas implica que ngrep está fazendo alguma escolha de formatação. A procura de informações aqui mostra um commit :
allow column widths greater than 255.
que altera o tipo usado para representar o número de colunas de 8-bits para 32-bits . Se a sua tela redimensionada (usando uma fonte pequena) fosse maior que 255 colunas, ngrep seria agrupado, dando-lhe apenas 5 colunas a menos do que o excesso acima de 255. A partir do exemplo dado, parece que a largura do seu terminal pode ser 255 + 5 + 15 = 270 caracteres.
Você pode verificar isso usando stty -a .