Como utilizo muito terminal Solaris no trabalho e Ubuntu em casa, um pequeno script é muito útil quando fazemos uma busca por arquivos e no resultado queremos saber qual deles tem um determinado texto dentro:
$ for i in `find . -name '*.trc' -ls | grep 'Apr 22' | awk -F" " '{ print $9 }'`; do grep "texto" $i; done
excplicando:
for i in # loop com a iteração em i
`find . -name ‘*.trc’ -exec -ls -l {}; | grep ‘Apr 22′ | aw’k -F” ” ‘{ print $8}’`; # primeiro procure, a partir do diretório atual todos arquivos com extensão .trc e os mostre utilizando um “ls -l”, na lista filtre os arquivos pela data de 22 de abril e por fim exiba somente a 8 coluna da lista, usando espaço como separador de colunas.
do grep “texto” $i; # a partir do resultado da linha acima faz uma busca do texto em cada arquivo
done # final do for
Um observação importante é que a data e a quantidade de colunas pode variar de acordo com o sistema operacional.