De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.


Twittar via terminal v2

Colaboração: Raul Libório

Data de Publicação: 13 de Agosto de 2009

Quando eu vi a dica do Rafael para postar no twitter via terminal eu gostei muito, mas vi que podia melhorar um pouco, ficando mais rápido e fácil.

Bom, então é hora da brincadeira! Vamos ao script! =D

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 seu script!

  $ vim twibash.sh
  
  ## -- INICIO
  
  #! /bin/bash
  # Twittar via terminal
  #
  # Raul Liborio < rauhmaru#gmail.com>
  # Agradecimento ao Rafael Kellermann Streit
  # Script tambem disponivel em http://rauhmaru.blogspot.com/twibash
  
  # 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
  
  ## -- FIM

Salve o arquivo e execute da seguinte maneira:

  $ sh twibash.sh MENSAGEM

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.

Fora essas pequenas observações, ainda não identifiquei nada de tão relevante. Bom uso pa ocês!!!"

Essa dica juntamente com várias outras vocês encontraram no Blogmaru (http://rauhmaru.blogspot.com/). Dicas, humor, scripts e etecétara. Ah, como uso openSUSE, a maioria das dicas são destinadas a essa distro, porém, é claro, podem ser portadas para qualquer uma outra (até pq não gosto muito de ficar preso ao YaST...)

Adicionar comentário

* Campos obrigatórios
5000
Powered by Commentics

Comentários

Nenhum comentário ainda. Seja o primeiro!


Veja a relação completa dos artigos de Raul Libório