Comando colorido para saída do grep

2

Olá, fórum!

Eu comecei recentemente a trabalhar com o Debian e fazê-lo em um ambiente puramente de linha de comando. Eu me conecto de uma área de trabalho do Windows através de puTTY usando criptografia assimétrica, em vez de senhas.

Minha principal razão para executar um servidor Linux é permitir que o acesso SFTP compartilhe arquivos com usuários externos pela Internet. Eu faço isso usando o SSH e um 'chroot jail', o que me dá um grau razoável de segurança inerente. No entanto, preciso ser bastante diligente ao examinar o arquivo ' /var/logs/auth.log ' para tentativas de invasão. Infelizmente eu descobri que isso contém dados de autenticação para todos os logins no sistema Linux, não apenas o daemon SSH - o que é muito difícil de passar os olhos!

Para restringir as entradas de registro exibidas apenas àquelas relevantes para os relatórios de SFTP que uso atualmente:

grep SSHD /var/logs/auth.log | more

No entanto, perguntei-me se havia uma alternativa para ' mais ' em que eu poderia canalizar a saída grep para uma coloração semelhante à ' vim / view 'com': syntax enable 'set?

O mais próximo que cheguei até agora é:

grep --color=always SSHD /var/logs/auth.logs | more

Isso dá um realce vermelho 'SSHD' na seqüência de texto que realmente ajuda os olhos um pequeno . No entanto, não é tão bom quanto o destaque da sintaxe em ' vim '.

    
por Kenster 09.07.2014 / 14:46

1 resposta

1

Se você não se importar de instalar ferramentas externas, minha chamada será Pygments

It is a generic syntax highlighter for general use in all kinds of software such as forum systems, wikis or other applications that need to prettify source code. Highlights are:

  • a wide range of common languages and markup formats is supported
  • special attention is paid to details that increase highlighting
  • quality support for new languages and formats are added easily; most languages use a simple regex-based lexing mechanism
  • a number of output formats is available, among them HTML, RTF, LaTeX and ANSI sequences
  • it is usable as a command-line tool and as a library ...
  • and it highlights even Brainf*ck!

Depois de instalá-lo, você pode usá-lo como:

pygmentize -g file

... e você terá uma bela saída colorida.

Você pode até usá-lo como um alias - coloque isso no arquivo .profile :

alias colorseverywhere='pygmentize -g'

... e tente executá-lo como (de acordo com o seu exemplo):

grep SSHD /var/logs/auth.log | colorseverywhere

... ou apenas:

colorseverywhere /var/logs/auth.log

Espero que isso ajude!

    
por 09.07.2014 / 16:28