Meus cumprimentos a todos

Gostaria de saber se o grupo pode contribuir com uma dificuldade minha.

tenho um arquivo txt com uma listagem de e-mails para cálculo de % de 
uso de quota.
A estrutura do arquivo é a seguinte

User<tab>quota<tab>maildir

teoricamente para localizar um usuário dentro deste arquivo bastaria um 
grep bem simples

grep $User base.txt

funciona muito bem até o grep encontrar um usuário com . na string aí 
ele se perde. para ilustrar a situação segue abaixo as várias opções que 
eu testei com o grep.

[EMAIL PROTECTED] txt]# grep [EMAIL PROTECTED]  mysql.txt
[EMAIL PROTECTED]  10240 /usr/local/atmail/users/a/other/[EMAIL PROTECTED]
[EMAIL PROTECTED]    10240   /usr/local/atmail/users/b/a/[EMAIL PROTECTED]

[EMAIL PROTECTED] txt]# grep '[EMAIL PROTECTED]'  mysql.txt
[EMAIL PROTECTED]  10240 
/usr/local/atmail/users/a/other/[EMAIL PROTECTED]
[EMAIL PROTECTED]    10240   /usr/local/atmail/users/b/a/[EMAIL PROTECTED]

[EMAIL PROTECTED] txt]# grep "[EMAIL PROTECTED]"  mysql.txt
[EMAIL PROTECTED]  10240 
/usr/local/atmail/users/a/other/[EMAIL PROTECTED]
[EMAIL PROTECTED]    10240   /usr/local/atmail/users/b/a/[EMAIL PROTECTED]
[EMAIL PROTECTED] txt]#

SE eu fizer quoting no . usando uma barra ele traz apenas um resultado, 
a complicação disso é que a conta de e-mail está armazenada em uma 
variável e eu nunca sei quando existe o ponto ou não.

Próximo passo? tentar awk resultado? idêntico

Para análise segue também o trecho do script que faz este for.


contas=`awk '$1 {print $1}' $mcountpath/mysql.txt`
for conta in $contas
  do
  # Para cada conta extrai o limite de uso identificado no banco de dados

  quota=`grep $conta $mcountpath/mysql.txt |awk '{print $2}'`
  maildir=`grep $conta $mcountpath/mysql.txt |awk '{print $3}'`
done

Usando grep ou awk ou qualquer outra coisa tem como resolver isso?

Obrigado pela atenção de todos
Deivid Vilela

                
_______________________________________________________ 
Yahoo! Mail - Sempre a melhor opção para você! 
Experimente já e veja as novidades. 
http://br.yahoo.com/mailbeta/tudonovo/
 

Responder a