O amigo Carlos Demetrio publicou uma apostila muito interessante e excelente para iniciantes em shellscript. Recomendo a leitura.Clique aqui para acessar.
Publicada originalmente em:Apostila de Shell Script para iniciantes
O amigo Carlos Demetrio publicou uma apostila muito interessante e excelente para iniciantes em shellscript. Recomendo a leitura.Clique aqui para acessar.
Publicada originalmente em:Apostila de Shell Script para iniciantes
Segue abaixo o source de um portscan escrito em shellscript :)
Resumo do funcionamento: Ele simplesmente se conecta a cada porta do ip informado, envia um pacote tcp naquela porta e aguarda resposta (da mesma forma que um portscan feito com o netcat), logo em seguida se a porta estiver aberta ele salva ela no arquivo open.txt, e no final do portscan ele exibi uma lista com as portas abertas.
#!/bin/bash
# [portscan.sh]
# Portscan escrito em shellscript. Requer bash 4.0
#
if [ $1 -z ]
then
echo -e "Erro!!!\nUse:\nportScan IP"
else
# Info do host
HOST=$1
# Porta minima
MIN=1
# Porta maxima
MAX=1024
# Armazena as portas abertas
FILE=open.txt
echo "Resultado do portscan" > open.txt
port=$MIN
while [ $port -le $MAX ]
do
echo teste > /dev/tcp/${HOST}/${port}
[ "$?" = "0" ] && echo ${port} está aberta. >> $FILE
let port++
done
clear
cat open.txt
fi
É ainda tem gente que não respeita um bom shell :p
[]‘s
Como já sabem sou fã de sed, awp, bash (bash > all), enfim shellzinho. Existem algumas publicações em português indispensáveis na biblioteca de qualquer com nerd viciado em shell como o shell script profissional do Aurélio Marinho e os livros do Júlio neves.
Bom hoje apresento para quem não conhece um excelente ebook: Dominando o sed, escrito pelo Aurélio Marinho disponibilizado gratuitamente no seu site.
Um livro inacabado sobre Sed, disponível gratuitamente em PDF. Ele cobre instalação, todos os detalhes dos endereços, como lidar com arquivos, quebras de linha, maiúsculas e minúsculas, contando com vários exemplos didáticos com que podem ser testados em sua máquina.
Tá esperando o que para começar a ler? Baixe agora e vá ler: pela página oficial do ebook ou no meu ftp.
Dica: No meu ftp tem dezenas de paper e ezines sobre linux, programação, segurança, redes e claro shell :)
[]‘s
Afinal o que é sed e para que ele serve? O sed é uma ferramenta muito interessante, considero junto com cut e tr as ferramentas mais sensacionais dos sistemas unix-like, ele nos permite substituir, remove, modificar, adicionar strings ou caracteres em determinadas posições. Complicou? Vamos simplificar então!
Imagine que você tem um texto enorme de 15 mil linhas e você precisa trocar todas as ocorrências da palavra chuchu por abacate! O que fazer? Vai tentar trocar termo por termo na mão? Obvio que você não é masoquista para tentar algo como isso.
O exemplo acima pode ser solucionado de uma forma muito simples, assumindo que o arquivo de 15 mil linhas se chama arquivo-sacana.txt vamos executar:
$ cat arquivo-sacana.txt| sed 's/chuchu/abacate/'
Explicando o comando assim:
$ → cifrão indica que você está logado com um usuário não root
cat → comando que exibi um arquivo-sacana
arquivo-sacana.txt → o arquivo que tem 15 mil linhas
| → joga o resultado do comando antes da | para o próximo comando, no caso o sed
sed – > o comando sed, dã
s/chuchu/abacate/ → aqui está a mágica!
Para realizamos trocas simples com sed, basta s/troca-isso/por-este/.
Pronto viram como foi simples? Nem tanto o comando acima faz algo que talvez não é o desejável, o que nos queremos e mudar TODAS as ocorrências da palavra chuchu por abacate então precisamos adicionar o parâmetro ‘g’ no final do sed ficando assim:
$ cat arquivo-sacana.txt| sed 's/chuchu/abacate/g'
Pronto agora toda vez que aparecer a palavra chuchu o sed irá mudar para abacate. Quando não executa com o parâmetro ‘g’ o sed vai apenas aplicar a mudança a primeira vez que a palavra chuchu aparecer na linha ou seja apenas na primeira ocorrências por linha.
Isso é apenas uma introdução ao uso do sed, afinal de contas é o começo da sessão sobre sed. Esse carinha é tão especial que vai ganhar até uma sessão só para ele.
[]‘s
Podemos converter facilmente uma string minuscula para maiúscula e vice-versa com o poderoso shellscript, utilizando o comando tr:
echo 'string em caixa baixa' | tr [:lower:] [:upper:]
Caso queria converter de maiúsculo para minusculo basta fazer o processo inverso:
echo 'STRING EM CAIXA ALTA' | tr [:upper:] [:lower:]
O poder do shell :)
[]‘s
Últimos Comentários