Archive for dezembro, 2010
MTR: Saiba a quem culpar em caso de problemas com internet e rede :D
Quantas vezes já tivemos problemas com uma conexão e o seu provedor manda “reiniciar o modem” ou o seu administrador de rede diz que “aqui não tem nada”, mas sequer verificou o problema?
Há um X9 (dedo-duro) a seu favor, o utilitário mtr. Vamos testá-lo com um endereço famoso:
mtr google.com.br
A primeira imagem a seguir vai te ajudar a ter uma noção do que ele faz. Todos os resultados estão 100%.
Mas esta outra, que tive que forjar uma falha porque não tinha nada ruim no momento, vai te ajudar a entender melhor.
Perceba a porcentagem de perda de pacotes.
Pronto, o seu maior informante acabou de te revelar o culpado dos problemas.
Algumas dicas (e umas óbvias):
- Se o problema está no IP da sua máquina em um IP da sua rede interna, mãos à obra, ou fale com o administrador da sua rede.
- No nosso exemplo, o provedor pode resolver esse problema.
- Se o problema está além do provedor, o que pode acontecer é você contatar os responsáveis por “aquele salto” ou verificar se o seu provedor pode te ajudar.
- Uma verificação legal é testar de um link de um provedor concorrente, seja 3G, cabo ou ADSL. Nestas horas que a gente acaba se lembrando dos amigos :D.
256 cores no shell
Quem leu os posts [Deixando o prompt colorido] e [Usando cores e efeitos no shell] gostou da idéia de colorir os caracteres do shell e o prompt com 16 cores.
Porém, é possível que o seu shell tenha 256 cores, sendo as 16 que já vimos até então (do padrão ANSII) e mais 240 novas.
Para explicar novamente o que expliquei em [Usando cores e efeitos no shell], é mais cômodo você ler o artigo que citei antes, pois o uso das 256 cores é mais complexo (sem saber o básico, você terá dificuldades de compreender), e depois volte a partir daqui para continuar de onde parou :D
Vamos aos exemplos agora.
Para imprimirmos o nome “Alice” apenas em violeta, ou seja, Alice
echo -e "\033[0;38;5;129m Alice \033[0m"
"Alice" com fundo verde-limão e texto em negrito: Alice
echo -e "\033[1;48;5;118m Alice \033[0m"
Para entender melhor:
echo -e "\033[1;48;5;118m Alice \033[0m"
O número 1 é o código do negrito. Se ele for 0, não é negrito. Os demais efeitos estão em [Usando cores e efeitos no shell].
O número 48 é para que a cor seja especificada como plano de fundo. Se for 38 a cor é especificada para o texto.
Não sei qual é a finalidade desse número 5, mas ele deve estar ali. Se for omitido ou colocar outro número no lugar, não vai funcionar.
O número 118 é o código da cor verde-limão. O código do violeta é 129. A tabela completa com todos os códigos de cores está no final desse artigo.
E é possível combinar as cores de textos e de plano de fundo também.
"Alice" com texto em violeta com fundo verde-limão sem efeitos, ou seja, Alice
Vamos printar o código do texto violeta primeiro (\033[0;38;5;129m) e depois o código do plano de fundo verde-limão (\033[0;48;5;118m):
echo -e "\033[0;38;5;129m\033[0;48;5;118m Alice \033[0m"
"Alice" com texto em violeta e negrito com fundo verde-limão, ou seja, Alice
Vamos printar o código do texto violeta primeiro (\033[0;38;5;129m) e depois o código do plano de fundo verde-limão com o código de negrito junto (\033[1;48;5;118m).
echo -e "\033[0;38;5;129m\033[1;48;5;118m Alice \033[0m"
Nada impede também de você querer printar primeiro o código do plano de fundo e depois o código do texto, porque o resultado final será o mesmo, independente da ordem, porém o código do efeito deve ser especificado na última tag, do contrário, não vai sair o efeito negrito (ou qualquer outro), porque você vai acabar ativando o negrito com 1 na primeira tag, mas já o desativa logo em seguida com o 0 na segunda tag.
A seguir está a tabela completa de todas as cores:
Quem usa o terminal do Mac vai se decepcionar, porque este terminal não suporta 256 cores, os demais sim, porém quem usa o Mac pode ter esperanças nos terminais alternativos, como o Zoc, o Terminator ou o iTerm. O terminal nativo do X que é utilizado pelo Mac e pelo Linux suporta todas essas cores.
Para saber quais são os efeitos e quais programas o suportam, veja [Usando cores e efeitos no shell].


