Peczenyj's Blog

Just Another /Perl|Ruby|C++|Java|Python|JavaScript|Flash|Bash/ Hacker

Tabela Do Brasileirão 2008 Com Links + Sed

O sed é um processador de texto muito versátil.

O links é um browser modo texto com features tão interessantes quanto do antigo lynx.

Ano passado eu postei como imprimir a tabela do brasileirão com um one liner interessante. Agora eu resolvi beber de outra fonte:

#!/bin/bash
TIME=Internacional
COLOR=$(echo -ne '\e[31;1m&\e[m')
URL=http://globoesporte.globo.com/Esportes/Futebol/Classificacao/0,,ESP0-9827,00.html
links --dump ${URL} | sed -r 's/\[[0-9]*\]//;/(^[0-9]|J jogos)/!d' | sed "s/${TIME}/${COLOR}/
1a-----Libertadores----------
4a-----Pre-Libertadores------
5a-----Sul-Americana---------
13a---------------------------
17a-----Rebaixado-------------"


O resultado não é tão bom quanto o do ano passado, é verdade, mas não deixa de ser uma alternativa

Comments

Alan Carvalho de Assis
Ola Tiago,
gostei do script, muito fera.

Um abraço,

Alan
Tiago Peczenyj
Dê tempo ao tempo… ;-)
Ivan Brasil Fuzzer
Com poucas alterações no script até o resultado melhora.
Os bugs encontrados estão na cor e no time!
Mudando para azul e Gremio fica bem melhor :-P

Abraços.

Gerenciando Inovações

No ramo da tecnologia da informação, vulgo informática, saber gerenciar inovações é uma arte. Não tenho outras palavras para descrever o fato de vc olhar para uma ideia como o gmail, youtube, icq, orkut ou geocities e dizer “isso tem futuro”. Mas não é bem assim.

A história de cada inovação bem sucedida é extremamente complexa: são opiniões diversas, conflitos internos, apostas, brigas e muito trabalho para transformar uma ideia em algo que marque de verdade. Com certeza nada naquilo que temos hoje é o que foi imaginado de primeira, afinal os conceitos evoluem. Com certeza aquele chefe chato que barrava todas as ideias contribuiu, mesmo que indiretamente, para o sucesso da ideia.

Ai tem um ponto interessante: quem não conhece aquele chefe que barra todas as ideias inovadoras? Estes são o outro extremo da coisa! A informática muda muito, as pessoas que tem computador hoje são diferentes das que tinham no passado e assim por diante, é dificil vc inovar sem se arriscar muito: é ai que entra o medo.

Em todos os ramos existe inovação, o que diferencia é a velocidade com a qual as coisas andam. Alguns ramos seguem as mesmas ideias por décadas ou séculos, enquanto outros ramos a escala é de semanas. É dificil não ter medo, afinal ou vc inova ou vc faz coisas loucas, inconsequentes, que podem destruir todo um trabalho de uma vida.

O segredo é saber o que vc quer. Empresas de tamanho médio inovam com algum pé atrás, apostando em formulas consagradas e alguma novidade para quebrar o clima. Empresas grandes não podem se dar ao luxo de inovar sob pena de perder o fio da meada portanto podem comprar as empresas pequenas que, inovando, podem gerar lucro para gigantescas corporações multinacionais. E este é apenas um cenário de muitos que acontecem por ai. Temos empresas que sabem vender o convencional como se fosse inovação, e vice-versa.

A questão é: como lidar com inovações quando as mesmas podem ser o próximo microsoft bob ou o Iphone? Acho que cada um tem a sua formula: seja inovando ou comprando inovações por chegar a um tamanho que não é possivel não ser burocrata, cada um enfrenta essas novas tendências como acha melhor, trabalhando num ramo muito recente, onde as regras estão sendo escritas por bilhões de pessoas.

A resposta não é algo vago como: dilheiro dá em árvores ou todos tem potencial para ser algo mágico, etc, etc. É necessário entender as inovações que surgiram nos ultimos 10 anos (flash, ajax, orkut, celular, busca por palavras chave, etc) e reconhecer que existem milhões/bilhões de pessoas que contribuem para isso e elas são extremamente intelectualmente ativas. Uma face disso são os projetos open source como Linux, Hibernate e Ruby on Rails que competem de igual para igual com gigantescas corporações.

Resumindo: eu não sei lidar com inovações, mas elas chegam até mim via centenas de privilegiados que bebem da fonte. De alguma forma eu participo delas, mas não sei gerar nenhuma, tampouco saberia gerenciar, mas sei respeitar que o assunto é complexo e, principalmente, causa medo.

Medo de prejuizos. Principalmente se alguem lembrar muito, ou pouco.

Pesquisando Nos Grupos Do Yahoo

Meu amigo MrBits me deu essa grande ideia:

#!/bin/bash
QTDE=20
CHARSET=UTF-8
GROUP=shell-script

while getopts g:c:q: OPTION ; do
case $OPTION in
g) GROUP=$OPTARG ;;
c) CHARSET=$OPTARG ;;
q) QTDE=$OPTARG ;;
esac
done

shift $(($OPTIND -1))

SEARCH="$@"

if [ -z "$SEARCH" ]; then
echo "Usage: $(basename $0) [-q qtde] [-g grupo] [-c charset] search"
exit 1
fi

BASEURL="http://br.groups.yahoo.com/group"
URL="${BASEURL}/${GROUP}/msearch?submit=OK&charset=${CHARSET}&cnt=${QTDE}&query=${SEARCH// /+}"
SEDCMD="/message/!d;/${GROUP}/!d;/.*[0-9]/!d;s#/group#${BASEURL}#g;s/<[^>]*span>//g;s/$/<br \/>/"

LYNXOPT="-dump -force_html -assume_charset=${CHARSET}"
lynx $LYNXOPT <( curl -b /tmp/cookie$$ -sL "${URL}" | sed "${SEDCMD}" )


Vejamos em uso:
$ ./find.sh              
Usage: find.sh [-q qtde] [-g grupo] [-c charset] search

$ ./find.sh -q 10 getopts # procurando por getopts limitando a 10 registros
[1]Re: [shell-script] Script de busca de mensagens
[2]Re: [shell-script] Re: script iterativo / passo a passo
[3]Re: [shell-script] Script de Backup
[4]Re: [shell-script] Script de Backup
[5]Re: [shell-script] Script de Backup
[6]Re: [shell-script] Script de Backup
[7]Re: [shell-script] Echo e executa: superecho
[8]Re: [shell-script] testar se parametro $1 foi passado
[9]Re: [shell-script] Echo e executa: superecho
[10]Re: [shell-script] testar se parametro $1 foi passado

References

1. http://br.groups.yahoo.com/group/shell-script/message/26373
2. http://br.groups.yahoo.com/group/shell-script/message/26204
3. http://br.groups.yahoo.com/group/shell-script/message/26078
4. http://br.groups.yahoo.com/group/shell-script/message/26076
5. http://br.groups.yahoo.com/group/shell-script/message/26075
6. http://br.groups.yahoo.com/group/shell-script/message/26072
7. http://br.groups.yahoo.com/group/shell-script/message/25742
8. http://br.groups.yahoo.com/group/shell-script/message/25720
9. http://br.groups.yahoo.com/group/shell-script/message/25719
10. http://br.groups.yahoo.com/group/shell-script/message/25718


Divertido, não? o default é procurar no grupo shell-script do yahoo, mas ele pode investigar em qualquer um.

Valeu Mr.Bits!!

Comments

Tiago Peczenyj
Hahaha… te amarrou, gc?

Podes usar pra pesquisar no rioguj ;-)
Guilherme Chapiewski
\o/

É por isso que bash é a melhor coisa de todo o universo!!!
Tiago Peczenyj
Mas é facil, Roger!

/padrão/!d -> apaga *todas* as linhas que *não* casam com o padrão

s/padrão/substituição/g -> substitui, globalmente, o padrão pela substituição

s#xxx#yyy#g -> mesma coisa, util para não ter que escapar o caracter /
Roger Leite
Putz Tiago ! Você tá ficando muito louco mesmo, deve ser o sol ai do Rio … não é possível !

Estes comandos de sed são de arrepiar, um dia ainda vou entender isso “nativo”.

flw e sucesso!
Tiago Peczenyj
VB ? NUNCA!!!

Mas ja fiz coisas com VBScript… :$
Marcelo Martins
Tiago, tu ta ficando cada vez pior cara. Já pensou em dar um tempo e programar um pouco em Visual Basic?


hehe.. muito bom!

Francisco Ayala: Ciencia E Religiao

Interessante conclusão do Francisco J. Ayala:

Considere que pelo menos 20% das gravidezes notoriamente terminam em aborto espontâneo. Se isso resulta de anatomia divinamente inspirada Deus é o médico que mais realiza abortos.


Vale a pena ler o resto aqui

O começo:
Ex-padre defende que Deus e teoria evolutiva de Darwin são compatíveis

Para um professor universitário, Francisco J. Ayala passa muito tempo na estrada.
Biólogo e geneticista evolutivo na Universidade da Califórnia em Irvine, ele freqüentemente fala em universidades, igrejas e qualquer outro lugar, geralmente em defesa da teoria da evolução e contra argumentos do criacionismo e seu primo ideológico, o design inteligente.

Comments

Tiago Peczenyj
Mas ai é chutometro ;-)
voyeg3r
Já parou pra pensar que este número pode estar relacionado com a tal “vida moderna”, a força do capitalismo que nos faz comer toda porcaria que há. Além do mais a indústria do aborto assim como a das armas também manipula números em seu favor. Fiquemos bem cientes que há sim um forte lobby sedento por sangue e lucros tão organizado quanto o que fez os brasileiros pensarem que armas protegem a vida!