Script-twiter

Ir para: navegação, pesquisa

Este script permite que seja realizada uma postagem no Twitter utilizando a linha de comando.


HOW-TO

Primeiro vamos criar um arquivo que irá guardar o nosso login e senha. Preferencialmente, crie dentro do seu home ($HOME) como um arquivo oculto e que apenas VOCÊ tenha permissão de leitura:

$vim $HOME/.tw

Insira dentro do arquivo seu login e senha, cada um em uma linha. Cuidado para não deixar espaços em branco, isso pode atrapalhar:

 usuario
 password

Altere as permissões desse novo arquivo:

$chmod 400 $HOME/.tw

Agora, crie o arquivo do seu script!

$ vim twibash.sh

Script

 #! /bin/bash
 # Twittar via terminal
 #
 # Raul Liborio < rauhmaru#gmail.com>
 # Agradecimento ao Rafael Kellermann Streit
 # Script tambem disponivel em http://rauhmaru.blogspot.com/
 
 # FUNCIONAMENTO : Crie o arquivo em $HOME/.tw e na primeira
 #               : linha insira seu nome de usuario. Na
 #               : segunda linha insira a sua senha.
 #               : aplique um 'chmod 600' nesse arquivo para
 #               : apenas o seu  usuario ter acesso de leitura
 # VERSAO        :
 # 0.1           : Postagem no Twitter via terminal
 # 0.2           : Contagem de caracteres
 
 # ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
 # VARIAVEIS
 ARQ="$HOME/.tw"         # Arquivo onde estah login e senha
 LOGIN=$( head -1 $ARQ ) # captura de login em arquivo $ARQ
 PASS=$( tail -1 $ARQ )  # captura de senha em arquivo $ARQ
 POST="$*"               # Mensagem
 POSTSIZE=$( echo $* | wc -m )   # Qtdade. de caracteres
 SEND="Enviado com sucesso em $( date +"%x as %T" )" # Confirmacao de envio
 URL="http://twitter.com/statuses/update.xml"
 # -- MENSAGENS DE ERRO
 # ERR 01 - FALHA NO ENVIO
 ERR_FUNC="Deu erro =("
 #ERR 02 - LIMITE DE CARACTERES EXCEDIDO
 ERR_CHARLIMIT="\nLimite de 140 caracteres excedido. Reduza sua mensagem.\n"
 
 # -- LIMITACAO DE CARACTERES (140)
 [ $POSTSIZE -gt 140 ] && echo -e $ERR_CHARLIMIT && exit 1
 # -- ENVIO DE MENSAGEM
 curl -u $LOGIN:$PASS -d status="$POST" $URL > /dev/null
 # --TRATAMENTO FINAL
 [ $? -eq 0 ] && echo $SEND || echo $ERR
 

Salve o arquivo e execute da seguinte maneira:

$ sh twibash.sh MENSAGEM

Transformando em um script do sistema

Caso queira utilizar este script apenas chamando pelo seu nome, é simples: Primeiro, mova-o ou copie para um diretório que esteja na sua variável $PATH, como por exemplo, o diretório /usr/bin

$sudo cp twibash.sh /usr/bin/twibash

Agora basta apenas dar permissão de execução ao script

$sudo chmod +x twibash

Observações importantes

  • O script já contém uma regra de limite de caracteres, já que o limite do Twitter é 140.
  • Ainda não há a conversão de links para short links, mas estou trabalhando nisso =)
  • Alguns caracteres não são aceitos ('!', '(', '#' são alguns), por limitação do bash, já que ele não aceita estes caracteres como parâmetros.



--Rauhmaru 01:08, 29 Julho 2009 (UTC)