Tweetin - Poste tweets pelo terminal
Publicado por Danillo Souza (última atualização em 02/09/2010)
[ Hits: 6.621 ]
Script que te possibilita enviar tweets pelo terminal, oferecendo proteção na hora da digitação da senha (igual a senha do comando 'su' por exemplo).
#!/usr/bin/perl -w
# Author: Danillo Souza
# Email: danillo012@gmail.com
# Version: 0.1
#
# Small quick script to post tweets while working in the terminal
# or for use on systems that do not use graphical user interface (eg servers).
#
# I hope you use and like ;D
use strict;
use Net::Twitter;
use Term::ReadKey;
# get the password
sub get_pass {
my($msg, $tmp) = (shift, '');
print $msg;
ReadMode 'noecho';
$tmp = ReadLine 0; chomp $tmp;
ReadMode 'normal';
print "\n";
return $tmp;
}
sub tweetin {
# catch the username, password and the text f tweet
my($user, $passwd, $tweet) = @_;
# verifications
if ($user !~ /^.{1,15}$/) {die "Invalid username.\n";}
if ($passwd !~ /^.{6,}$/){die "Invalid password.\n";}
if ($tweet !~ /^.+$/) {die "Invalid tweet.\n"}
if ($tweet !~ /^.{1,140}$/){$tweet = substr($tweet, 0, 140);}
# create the twitter object
my $twitter = Net::Twitter->new(
traits => [qw/API::REST/],
username => $user,
password => $passwd
);
# try to tweet it
eval {$twitter->update($tweet)}; die "Autentication failed.\n" if $@;
# if sucesful..
print "Tweeted at ".scalar(localtime).":\n";
}
# checking the number of parameters
die "Usage: tweetin.pl <user> <tweet>\n" if (scalar(@ARGV) < 2);
# catching command line arguments
my $user = shift(@ARGV);
my $tweet = shift(@ARGV);
my $passwd = get_pass "Password autentication:";
tweetin($user, $passwd, $tweet);
Descobrir operadora de celular
Synner Novo Sys(TCP) Flooder em Perl
Pesquisar palavras no Diário Oficial da União
API do Bing para traduzir textos
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
fusermount3 no Ubuntu 25.10 - mantenha o perfil do AppArmor
[Resolvido] dlopen(): error loading libfuse.so.2 AppImages require FUSE to run.
Criação de diretórios e aplicação de restrições de acesso no Linux
Podem me chamar de 1mbecil :) (3)
diferença entre o Tor baixado pelo Gerenciador de Aplicativos e o Tor ... (3)
Servidor de DNS BIND Ubuntu server (0)
Debian Stable travado em atualizações: dist-upgrade não resolve [RESOL... (11)









