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

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

Re: [shell-script] Help awk


From: ®i©
Subject: Re: [shell-script] Help awk
Date: Thu, 3 Dec 2009 11:23:30 -0200

Montei o abaixo antes da msg do thiado

ls opt/plone-2.5.5-prod/zeocluster/server/var/*.fs|while read a; do echo;
echo mkdir -v $(awk -F/ '{print $NF}' <<< $a|cut -d . -f1);echo
/opt/plone-2.5.5-prod/bin/repozo.py -B -F -z -f $a -r $(awk -F/ '{print
$NF}' <<< $a|cut -d . -f1); echo tar cvjf $(awk -F/ '{print $NF}' <<< $a|cut
-d . -f1)/$(awk -F/ '{print $NF}' <<< $a|cut -d . -f1).tar.bz $(awk -F/
'{print $NF}' <<< $a|cut -d . -f1)/*.{dat,fzs}; echo rm -f $(awk -F/ '{print
$NF}' <<< $a|cut -d . -f1)/*.{dat,fzs}; done


executou com performance de 2.404s
substituindo o cut por sed  3.094s como sugeriu o thiago
1.969s utilizando a 2ª sugestão do awk pelo thiado
e 0.054s utilizando a dica do jimmy


ficando assim:
time find opt/plone-2.5.5-prod/zeocluster/server/var/ -name \*.fs -printf
'%h %f\n'|
while read path file; do
echo;
echo mkdir -v ${file%.fs};
echo repozo.py -B -F -z -f $path/$file -r ${file%.fs};
echo tar cjf ${file%.fs}/${file%.fs}.tar.bz ${file%.fs}/*.{dat,tzs};
echo rm -f ${file%.fs}/*.{dat,tzs};
done

saida:
mkdir -v sepmBD
/opt/plone-2.5.5-prod/bin/repozo.py -B -F -z -f
opt/plone-2.5.5-prod/zeocluster/server/var/sepmBD.fs -r sepmBD
tar cvjf sepmBD/sepmBD.tar.bz sepmBD/*.dat sepmBD/*.fzs
rm -f sepmBD/*.dat sepmBD/*.fzs

mkdir -v sepmcndmBD
/opt/plone-2.5.5-prod/bin/repozo.py -B -F -z -f
opt/plone-2.5.5-prod/zeocluster/server/var/sepmcndmBD.fs -r sepmcndmBD
tar cvjf sepmcndmBD/sepmcndmBD.tar.bz sepmcndmBD/*.dat sepmcndmBD/*.fzs
rm -f sepmcndmBD/*.dat sepmcndmBD/*.fzs

mkdir -v sepmforumBD
/opt/plone-2.5.5-prod/bin/repozo.py -B -F -z -f
opt/plone-2.5.5-prod/zeocluster/server/var/sepmforumBD.fs -r sepmforumBD
tar cvjf sepmforumBD/sepmforumBD.tar.bz sepmforumBD/*.dat sepmforumBD/*.fzs
rm -f sepmforumBD/*.dat sepmforumBD/*.fzs


Valeu Galera!!!

2009/12/3 jimmy <address@hidden>

>
>
> On Thu, Dec 03, 2009 at 10:25:24AM -0200, ®i©@®ÐØ wrote:
> >
> >
> > Gostei! esta eu não conhecia, entretando entre os outros comandos que
> > preciso de executar tenho que usar o resto da string...
> > etapas:
> > #1. identificar os arquivos *.fs
> > /opt/plone-2.5.5-prod/zeocluster/server/var/sa-restauracaoBD.fs
> >
> > #2. criar o diretório do arquivo identificado
> > mkdir /path/sa-restauracaoBD
> >
> > #3. Executar o comando abaixo no arquivo identificado apontando para o
> > diretório criado.
> >
> > repozo.py -B -F -z -f
> /opt/plone-2.5.5-prod/zeocluster/server/var/cepBD.fs
> > -r /path/sa-restauracaoBD
> >
> > #4. o comando acima gera dois arquivos, xxxx-xx-xx-xx-xx-xx.dat e outro
> > xxxx-xx-xx-xx-xx-xx.fsz
> > tar cjf
> > xxxx-xx-xx-xx-xx-xx.tar.bz/path/sa-restauracaoBD/xxxx-xx-xx-xx-xx-xx.*
> >
> > #5. remover os arquivo /path/sa-restauracaoBD/xxxx-xx-xx-xx-xx-xx.*
> > rm -f /path/sa-restauracaoBD/xxxx-xx-xx-xx-xx-xx.{fsz,dat}
> >
>
> montei agora e não tenho como testar, veja se isso lhe atende pelo menos
> em parte.
>
> find /tmp/opt/plone-2.5.5-prod/zeocluster/server/var/ -name \*.fs -printf
> '%h %f\n' |
> while read path file; do
> new_path=$path/${file%.fs}
> mkdir $new_path
> repozo.py -B -F -z -f $path/$file -r $new_path
> tar jcf ${file%.fs}.tar.bz2 $new_path/${file%.fs}.*
> rm -f $new_path/${file%.fs}.{fsz,dat}
> done
>
> --
> "Não manejo bem as palavras
> Mas manipulo bem as strings."
> ------------------------------
>  
>



-- 
-------------------------------------------------------------------------------------
ATENÇÃO: EVITE QUE SPAMMERS CAPTURE CONTATOS DE SUA LISTA,
SEMPRE QUE POSSÍVEL  REMOVA OS EMAILS DO REMETENTE E ENVIE EM (COO- CÓpia
Oculta) PARA SEUS CONTATOS.
;)

A Graça do nosso Senhor Jesus Cristo seja contigo. (1ªTs 5.28)
The grace of our Lord Jesus Christ be with you.  (1ªTs 5.28)
Jesus te ama, aceite-O! Jesus loves you, accept you Him!

                                              ®i©@®ÐØ


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



reply via email to

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