#1 - ASSISTA STAR WARS EM MODO ASCII
Dê o seguinte comando no shell:
$telnet towel.blinkenlights.nl
Agora é só curtir o filme. :D
#2 - DESCUBRA SEU IP EXTERNO PELA LINHA DE COMANDO
De vez em sempre precisamos saber o nosso IP dinâmico externo fornecido pela
operadora. Existem N formas de fazer isso. Aqui vou passar somente algumas
dicas para a linha de comando, pois é a forma que julgo mais rápida, até mais
rápida do que ter de acessar a página de configuração do roteador/modem para
consultar o IP adquirido.
- Usando wget: (utilize qualquer uma das opções, encontre a que você achar mais eficiente)
$wget -qO - icanhazip.com
$wget -qO - checkip.dyndns.org|sed -e 's/.*Current IP Address: //' -e 's/<.*$//'
$wget -qO - ifconfig.me
$wget -qO - ip.appspot.com
$wget http://ipecho.net/plain -O - -q ; echo
- Usando curl: (utilize qualquer uma das opções, encontre a que você achar mais eficiente)
$curl -s checkip.dyndns.org|sed -e 's/.*Current IP Address: //' -e 's/<.*$//'
$curl -s checkip.dyndns.org | grep -Eo '[0-9\.]+'
$curl -s http://checkip.dyndns.org/ | grep -o "[[:digit:].]\+"
$curl -s monip.org | iconv -f iso-8859-1 | sed -n 's/.*IP : \([0-9.]*\).*/\1/p'
$curl ifconfig.me
$curl ipecho.net/plain
$curl icanhazip.com
$curl ipv4.icanhazip.com (explicitamente evoca o IPv4)
$curl ipv6.icanhazip.com (explicitamente evoca o IPv6)
$curl curlmyip.com
#curl l2.io/ip
$curl ip.appspot.com
$curl ifconfig.me/ip
$curl eth0.me
- Com JSON caso você queira:
$curl httpbin.org/ip
$curl wtfismyip.com/json
- Usando dig:
$dig +short myip.opendns.com @resolver1.opendns.com
- Usando lynx:
$lynx -dump checkip.dyndns.org | grep 'Current IP Address:'
$lynx -dump eth0.me
$lynx --dump monip.org | grep 'IP'
Não vou me prolongar mais nesta parte, com oeu disse: EXISTEM "N" MANEIRAS
PARA SE CHEGAR AO MESMO RESULTADO!
Cabe a você escolher a que achar melhor. Faça alterações nos comandos, faça
suas experiências, adapte-os. Basta olhar na lista e verá que exitem várias
adaptações e modificações para um mesmo comando principal. O que influencia
no final é sua escolha.
Finalizando esta parte, indico uma última alternativa:
Quem usa Debian/Ubuntu pode instalar, caso já não tenha instalado, o pequeno
programa miniupnpc se o seu roteador/modem tiver suporte para UPnP. Depois de
instalado é só executar:
$upnpc -s | grep ^ExternalIPAddress | cut -c21-
Esse comando fará o mesmo que todos os outros indicados nesta seção: te
mostrará seu IP dinâmico externo.
Dica
Você pode criar um shell script simples com algum dos comandos acima para
tornar o processo ainda mais rápido. Exemplo
#!/bin/bash
#Cria váriável e atribui valor
MYDINIPADDRESS="`curl -s checkip.dyndns.org|sed -e 's/.*Current IP Address: //' -e 's/<.*$//'`"
echo "\n O seu endereço IP externo é: $MYDINIPADDRESS"
Salve o arquivo (de preferência coloque a extensão .sh), torne-o executáve
alterando suas permissões e depois é só executar.
#3 - EXTRAINDO TEXTO PURO DE ARQUIVOS HTML
Certa vez precisei extrair texto puro de um arquivo html. Encontrei várias
opções de conversores e etc, mas a maneira mais rápida e eficaz para mim
foi utilizando o lynx.
Basta executar o comando:
$lynx --dump arquivo.html > arquivo.txt
Funciona também com arquivos PHP
#4 - UM POUCO DE CURL
Alguns usos úteis do curl:
- Baixando arquivos:
$curl -o nome_arquivo_local http://url_direta_para_o_arquivo
Este comando funciona mesmo com binários, desde que você tenha o link direto
para o arquivo
- Baixando/Upando arquivos de/para servidores FTP:
$curl -u ftpuser:ftppass -O ftp://diretório_do_servidor/nome_do_arquivo
O comando acima baixa o arquivo e salva no diretório local
$curl -u ftpuser:ftppass -O ftp://diretório_do_servidor/outro_diretório/
O comando acima lista todo o conteúdo existente em outro_diretório
$curl -u ftpuser:ftppass -T arquivo.txt ftp://ftp.algumserver.org
O comando acima upará o arquivo.txt para o servidor
$curl -u ftpuser:ftppass -T "{arquivo1,arquivo2}" ftp://ftp.algumserver.org
O curl permite upar vários arquivos de uma vez, exatamente como feito no
exemplo acima. Você também pode utilizar curingas, como no comando abaixo,
onde todos arquivos que satisfazerem a expressão serão baixados:
$curl ftp://ftp.server.org/downloads/linux/[a-z]/
O curl é possui grande poder e versatilidade (aliás, todo o Linux é assim
:D), os comandos aqui foram apenas uma simples mostra. Não vou aprofundar
ou então deixar de ser "Dicas rápidas para linha de comando!"
#5 - COMANDOS ÚTEIS
- Testando se uma porta está aberta com o comando echo:
$echo >/dev/tcp/xxx.xxx.xxx.xxx/53 && echo "open"
No lugar do xxx.xxx.xxx.xxx coloque o endereço IP que deseja testar
- Criando senhas aleatórias:
< /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c${1:-10};echo;
Esta senha possui 10 caracteres. Altere a quantidade de caracteres desejados
editando o comando em: {1:-10}
- Exibir nome de dono do arquivo ou diretório:
$stat -c %U arquivo.txt
- Exibindo o IP local:
$ifconfig | grep "inet end.:" | awk '{print $3}' | grep -v '127.0.0.1' | cut -f2 -d:
Este comando pode não funcionar em sua máquina dependendo do sistema e
configuração. Se não funcionar você deve efetuar as devidas alterações no
mesmo. Ex.: seu sistema pode estar em inglês, neste caso, "grep "inet end.:""
deve ser alterado para "grep "inet addr:"", etc, etc. Existe um comando
mais rápido: "$ip addr show". Minha intenção foi mais uma vez demonstrar
como existem vários caminhos para se chegar ao mesmo resultado.
- Star Wars DNS
$traceroute 216.81.59.173
O comando acima te dará o traceroute de Star Wars.. Não entendeu? Execute.
$( seq 1 8 200 ; seq 6 8 200 ) | sort -n | xargs -I{} -n 1 dig +short -x 206.214.251.{}
Acima: Star Wars Episodio IV em DNS reverso
fonte:
http://www.dicas-l.com.br/arquivo/dicas_rapidas_para_linha_de_comando.php#.VNSaqzVVKlM