Registre as últimas N linhas com o irssi em tempo real [duplicado]

1

Sou muito novo no irssi (e no IRC em geral), e tenho a necessidade de registrar apenas o último número de linhas do irssi em um arquivo de texto, mas não consigo encontrar nenhuma informação sobre como fazer algo assim, seja com recursos incorporados ou um script.

O que eu quero fazer é sobrepor as últimas 10 linhas de bate-papo em um vídeo em tempo real. Para fazer isso eu posso usar e filtro ffmpeg que atualiza quando um arquivo de texto é alterado no disco. Portanto, o que eu quero fazer é escrever continuamente as 10 linhas mais recentes de uma sessão ativa do irssi para um arquivo de texto.

Como eu poderia fazer isso?

    
por Cameron Ball 05.11.2014 / 01:57

1 resposta

1

Se você executar a saída de irssi no comando tail , poderá obter o último número X de linhas, ex. cmd | tail -10 .

Exemplo

Usando o comando seq como substituto do comando irssi . O comando seq gerará uma sequência de números de 1-100, no exemplo abaixo.

$ seq 100 | tail -10
91
92
93
94
95
96
97
98
99
100

Para despejar em um arquivo, /var/log/mychat.log , você pode redirecionar a saída de tail usando > .

$ seq 100 | tail -10 > afile
$ more afile 
91
92
93
94
95
96
97
98
99
100

Se quiser ver a saída ao gravar no arquivo de log, use o comando tee em vez do redirecionamento do arquivo, > .

$ seq 100 | tail -10 | tee afile
91
92
93
94
95
96
97
98
99
100
    
por 05.11.2014 / 03:00

Tags