segunda-feira, 30 de abril de 2018

SÉRIE.: SHELL SCRIPT NOSSO DE CADA DIA (Parte 01)

Ter habilidades em trabalhar com shell script permite aproveitar ao máximo as funcionalidades do Linux e consequentemente evoluir nos estudos em Pentest.

Nesse primeiro post, de uma série longa, vou mostrar as funcionalidades práticas do shell script em tarefas rotineiras. Pode parecer coisas simples, porém, combinadas com atividades específicas, pode ajudar e muito.

Abaixo um exemplo de script que recebe palavras ou números e imprime a quantidade de caracteres. Atente para a utilização dos recursos na criação do script e tente implementar em outras situações ou até mesmo melhorar acrescentando navas funcionalidades.


1 #!/bin/bash
2
3 if [ "$1" == "" ]
4 then
5 echo "Passe o argumento $0 palavra(s)"
6 else
7 echo -n "$*" | sed 's/ //g' | wc -m
8 fi


Na linha 3 é colocado uma condição: se não for passado nenhum argumento, será exibida uma mensagem informando como o script deve ser executado.

Saltando para a linha 7, o comando echo precisa estar com o atributo -n para evitar fazer uma quebra de linha (\n) ao final do argumento passado pelo usuário. O que isso interfere? Caso você não coloque apenas o comando echo, a contagem final mostrará um byte a mais. 

O comando sed vai suprimir os espaços em branco pois o usuário pode passar mais de um argumento e a variável $* garante que o echo imprima todos. Tipo "palavra palavra" passadas pelo programa. 

Ao final, todas as informações serão canalizadas para o comando wc -m que vai fazer a contagem.

Gaste um pouco mais de tempo aprendendo a trabalhar com o sed pois é uma "mão na roda" para realizar filtros em arquivos de texto na obtenção de informações. Em breve vou mostrar exemplos mais avançados.

Bons estudos!

Nenhum comentário:

Postar um comentário