Úteis scripts bash

Alguns scripts bash que uso regularmente e que ajudam um bocado.

1) Script bash para pesquisar uma classe em arquivos jar

<pre>#!/bin/sh

if [ $# -lt 1 ] ; then echo “Uso: “ echo “ findJavaClass [-r] directory ClassName “ echo “” echo “ -r search into directory, wildcard can be used” echo “” exit 1 fi

if [ “$1” ] && [ $1 = ‘-r’ ] ; then for n in find $2 -name \*.jar; do echo “– “$n jar tf $n|grep $3; done else for n in $1/*.jar; do echo “– “$n jar tf $n|grep $2; done fi

</pre>

2) Mostra portas usadas no sistema operacional e qual processo usa a porta (necessita permissão de root)

<pre>#!/bin/sh

LANGUAGE=en sudo netstat -anptuw echo “————————————————————–”

if [ “$1” ] && [ $1 = ‘-a’ ] ; then sudo lsof -i -P echo “————————————————————–” fi

</pre>

3) Normalmente é necessário mostrar apenas algumas linhas de algum arquivo, e não é desejável mostrar
desde as primeiras linhas e fazer page down até a linha desejada, entã este script mostra
apenas as 10 linhas antes e depois do número de linhas especificado. Resumindo, mostra apenas o que interessa.

<pre>#!/bin/sh

line=echo $1+10|bc

head -$line $2 |tail -20 </pre>

4) Captura todos os pacotes tcp que trafégam na interface de rede especificada
no argumento (necessita permissão de root).

<pre>#!/bin/sh

sudo tcpdump -Xxl -vvv -i $1 -s 1024 </pre>

Written on November 23, 2004