shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Ajuda com SED


From: Julio C. Neves
Subject: Re: [shell-script] Ajuda com SED
Date: Sat, 17 Sep 2016 22:04:59 -0300

Hola Pere,
estou no mobile, então não tenho como testar, nem ver se é mais rápido, mas
se todas as linhas de fitxersmbl-net forem iguais a essas que vc mandou, tente
o seguinte:

$ Sai=$(sed -r 's/(.*)([0-9]{4})/printf \"\1%04d\\n"
$((\2-1))/' fitxersmbl-net); eval "$Sai"

Abcs,
Julio
*@juliobash*

*Próximos cursos de Shell*
*Cidade         Local Período*
*​*
*São Paulo 4Linux
<https://www.4linux.com.br/curso/programacao-em-shell-script> 05-09/12*
Dou treinamento de *Shell* em qualquer cidade.
Para mais detalhes, me mande um e-mail <address@hidden>.


Em 17 de setembro de 2016 19:51, Gmail address@hidden [shell-script] <
address@hidden> escreveu:

>
>
> Boa tarde:
>
> Preciso de ajuda para ver se você pode acelerar um processo , eu tenho que
> recolher mails de cerca de 400 máquinas, felizmente, estão em Thunderbird
> no formato mbox , mas há muitas caixas de correio que são compartilhados em
> muitas das máquinas, por várias razões , nem todos arquivos mbox têm o
> mesmo número de e-mails , alguns têm mais outros têm menos , e muitos são
> repetidas.
>
> Estou usando SED , para que em todas as pastas , as mensagens permanecem
> marcadas como não lidas . Então é mais fácil de trabalhar , eu acho.
>
> O que usamos agora é este script que recorre todas as pastas dentro MAIL
>
> *find * -type f > fitxersmbl; *
> *cat fitxersmbl | sed
> '/.msf/d;/.dirinfo/d;/.html/d;/.dat/d;/.tar/d;/.com$/d' > fitxersmbl-net; *
> *while read line; *
> *    do IFS='.' read lastname <<< $line;  *
> *    echo "$lastname";*
>
> *sed -i'.old' 's/Mozilla-Status: 0001/Mozilla-Status: 0000/g;*
> *s/Mozilla-Status: 0003/Mozilla-Status: 0002/g;*
> *s/Mozilla-Status: 0005/Mozilla-Status: 0004/g;*
> *s/Mozilla-Status: 0009/Mozilla-Status: 0008/g;*
> *s/Mozilla-Status: 0011/Mozilla-Status: 0010/g;*
> *s/Mozilla-Status: 0021/Mozilla-Status: 0020/g;*
> *s/Mozilla-Status: 0081/Mozilla-Status: 0080/g;*
> *s/Mozilla-Status: 0101/Mozilla-Status: 0100/g;*
> *s/Mozilla-Status: 0201/Mozilla-Status: 0200/g;*
> *s/Mozilla-Status: 0401/Mozilla-Status: 0400/g;*
> *s/Mozilla-Status: 0801/Mozilla-Status: 0800/g;*
> *s/Mozilla-Status: 1001/Mozilla-Status: 1000/g;*
> *s/Mozilla-Status: E001/Mozilla-Status: E000/g;*
> *s/Mozilla-Status: 0013/Mozilla-Status: 0012/g;*
> *s/Mozilla-Status: 0023/Mozilla-Status: 0022/g;*
> *s/Mozilla-Status: 0083/Mozilla-Status: 0082/g;*
> *s/Mozilla-Status: 0103/Mozilla-Status: 0102/g;*
> *s/Mozilla-Status: 0203/Mozilla-Status: 0202/g;*
> *s/Mozilla-Status: 0403/Mozilla-Status: 0402/g;*
> *s/Mozilla-Status: 0803/Mozilla-Status: 0802/g;*
> *s/Mozilla-Status: 1003/Mozilla-Status: 1002/g;*
> *s/Mozilla-Status: E003/Mozilla-Status: E002/g;*
> *s/Mozilla-Status: 0015/Mozilla-Status: 0014/g;*
> *s/Mozilla-Status: 0025/Mozilla-Status: 0024/g;*
> *s/Mozilla-Status: 0085/Mozilla-Status: 0084/g;*
> *s/Mozilla-Status: 0105/Mozilla-Status: 0104/g;*
> *s/Mozilla-Status: 0205/Mozilla-Status: 0204/g;*
> *s/Mozilla-Status: 0405/Mozilla-Status: 0404/g;*
> *s/Mozilla-Status: 0805/Mozilla-Status: 0804/g;*
> *s/Mozilla-Status: 1005/Mozilla-Status: 1004/g;*
> *s/Mozilla-Status: E005/Mozilla-Status: E004/g;*
> *s/Mozilla-Status: 0019/Mozilla-Status: 0018/g;*
> *s/Mozilla-Status: 0029/Mozilla-Status: 0028/g;*
> *s/Mozilla-Status: 0089/Mozilla-Status: 0088/g;*
> *s/Mozilla-Status: 0109/Mozilla-Status: 0108/g;*
> *s/Mozilla-Status: 0209/Mozilla-Status: 0208/g;*
> *s/Mozilla-Status: 0409/Mozilla-Status: 0408/g;*
> *s/Mozilla-Status: 0809/Mozilla-Status: 0808/g;*
> *s/Mozilla-Status: 1009/Mozilla-Status: 1008/g;*
> *s/Mozilla-Status: 1011/Mozilla-Status: 1010/g;*
> *s/Mozilla-Status: E009/Mozilla-Status: E008/g' *
> *"$lastname"; *
> *done < fitxersmbl-net*
>
>
> Funciona, mas é muito lento , você vê que faz a mesma operação várias
> vezes.
>
> Thunderbird utiliza o último dígito para marcar o e-mail como se ela foi
> lida ou não, você pode perceber que o que eu faço é subtrair 1 dos números
> ímpares , 1-3-5-9 e manter os três primeiros dígitos do seu valor. Eu não
> ver como fazer subtração, dependendo se o número for ímpar.
>
> Muito obrigado
> --
>
>
>
> Pere
>
> address@hidden
>
>
>
> <http://www.imatge.com/>
>
> ------------------------------------
>
> AVIS LEGAL
>
> Nota de confidencialitat: Aquest missatge podria contenir missatges
> d'empresa i altre informació confidencial tutelada per les lleis de Europea
> i altres estats, Si Vostè el rep per error o sense ser una de les persones
> esmenades a la capçalera, haurà de destruir-lo sense copiar-lo ni
> revelar-l'ho o qualsevol altre acció relacionada amb el contingut del
> missatge i notificar-ho per correu electrònic a l'emissor del missatge.
>
> Les persones o entitats que incompleixin els deures de confidencialitat
> podran ésser perseguides davant dels Tribunals de Justícia sota l'empar de
> la legislació civil, penal i administrativa nacional i internacional.
>
> Gracies per la seva cooperació.
>
> ------------------------------------
>
> LEGAL NOTICE
>
> Confidentiality notice: This mail may include business and other
> confidential information protected under the laws of and other territories.
> if you are not one of the intended recipients of the message, you are
> legally obliged to delete the message content. Furthermore, you are kindly
> requested to report immediately the incident to the sender.
>
> Breach of confidentiality duties is a serious criminal offence in and
> other territories. Offenders shall be legally prosecuted worldwide.
>
> Thank you for your cooperation.
>
>
>
> 
>


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

[Prev in Thread] Current Thread [Next in Thread]