shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

IRC Bot em shellscripting


From: Kurt Kraut
Subject: IRC Bot em shellscripting
Date: Sat, 14 Feb 2009 19:13:27 +0000

Aloha,

Esses dias eu perguntei como rolar a leitura de um arquivo texto todo
em shell scripting e fui muito bem respondido pelo MrBiTS, Flavio
Junior, JCNeves. Porém, o exemplo que eu dei não era muito ilustrativo
da minha pergunta e achei um que toca justamente na minha dificuldade
de interpretar logs e arquivos texto que modificam seu conteúdo
(adicionando linhas) o tempo todo.

Eu gostaria de fazer um bot de IRC com o programa ii:
http://www.suckless.org/programs/ii.html - O que esse programa faz é
bem simples e poderoso.

Se você acessar a rede irc.freenode.net no canal #debian, ele irá
criar um diretório local de nome ~/irc.freenode.net/#debian onde
haverá dois arquivos: in e out.

Se dermos cat irc.freenode.net/#debian/out veremos todo o output do
canal, ou seja, toda a conversa desde que o bot entrou nele. Caso
queiramos enviar uma mensagem para o canal basta:

echo "hello world" > ~/irc.freenode.net/#debian/in

Isso permite que bots de IRC sejam feitos com a mera manipulação de
arquivos texto. Porém, minha dificuldade é, como ficar lendo o arquivo
'out' para poder interpretá-lo? Para nosso BOT hipotético, eu gostaria
de simular a seguinte ocasião:

<KurtKraut> meubot: você gosta de shell?
<meubot> KurtKraut: Sim. Pois, como diz um amigo meu, para programar
em Shell não preciso de Texaco.

Eu poderia fazer um loop ficar dando tail -1 o tempo todo e dar um
grep em busca de 'gosta de shell'. Porém, se entre um loop e outro o
bot tiver recebido duas linhas de conversa, ele só interpretaria a
última. Atentem que o arquivo 'out' cresce constantemente.

Enfim, alguma sugestão? Se algo não ficou claro, por favor, basta perguntar.


Desde já agradeço pela atenção,


Kurt Kraut


reply via email to

[Prev in Thread] Current Thread [Next in Thread]