Всем Привет!Есть папка с письмами, писем около 1000, и необходимо вытащить оттуда только адреса получателей, и отправителей.
Как можно найти и сохранить в файл, список адресов почтовых ящиков, командой grep ?
Пробовал так:
grep -o '[[:alnum:]+\.\_\-]*@[[:alnum:]+\.\_\-]*' /var/www/postfix/data/email/site.ru/user/.maildir/ * | sort | uniq -i > /home/user.txtпустой файл
>[оверквотинг удален]
> Есть папка с письмами, писем около 1000, и необходимо вытащить оттуда только
> адреса получателей, и отправителей.
> Как можно найти и сохранить в файл, список адресов почтовых ящиков, командой
> grep ?
> Пробовал так:
>
> grep -o '[[:alnum:]+\.\_\-]*@[[:alnum:]+\.\_\-]*' /var/www/postfix/data/email/site.ru/user/.maildir/
> * | sort | uniq -i > /home/user.txt
>
> пустой файлgrep -E -o "\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,6}\b" /var/www/postfix/data/email/site.ru/user/.maildir/* | cut -d\: -f2 | sort | uniq -i
>[оверквотинг удален]
>> Как можно найти и сохранить в файл, список адресов почтовых ящиков, командой
>> grep ?
>> Пробовал так:
>>
>> grep -o '[[:alnum:]+\.\_\-]*@[[:alnum:]+\.\_\-]*' /var/www/postfix/data/email/site.ru/user/.maildir/
>> * | sort | uniq -i > /home/user.txt
>>
>> пустой файл
> grep -E -o "\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,6}\b" /var/www/postfix/data/email/site.ru/user/.maildir/*
> | cut -d\: -f2 | sort | uniq -iспасибо, а как сделать вывод адресов с количеством символов не более 40 ?
например:
automobile-manager@site.ru (28 символов) выводить
automobile-manager12423434523789122222223@site.ru не выводить:?
> например:
> automobile-manager@site.ru (28 символов) выводить
> automobile-manager12423434523789122222223@site.ru не выводить:?grep -E -o "\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,6}\b" /var/www/postfix/data/email/site.ru/user/.maildir/* | egrep -E -o "[A-Za-z0-9.-@]{1,40}" | cut -d\: -f2 | sort | uniq -i
>[оверквотинг удален]
>> Как можно найти и сохранить в файл, список адресов почтовых ящиков, командой
>> grep ?
>> Пробовал так:
>>
>> grep -o '[[:alnum:]+\.\_\-]*@[[:alnum:]+\.\_\-]*' /var/www/postfix/data/email/site.ru/user/.maildir/
>> * | sort | uniq -i > /home/user.txt
>>
>> пустой файл
> grep -E -o "\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,6}\b" /var/www/postfix/data/email/site.ru/user/.maildir/*
> | cut -d\: -f2 | sort | uniq -iдобавьте в конец | awk {'if(length($1)<30) print $1'}
получится вот так:
grep -E -o "\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,6}\b" /var/www/postfix/data/email/site.ru/user/.maildir/* | cut -d\: -f2 | sort | uniq -i | awk {'if(length($1)<30) print $1'}