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

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

Re: [shell-script] Uma sugestao de cut ou algo melhor


From: Alicino
Subject: Re: [shell-script] Uma sugestao de cut ou algo melhor
Date: Tue, 28 Jul 2009 16:57:16 -0300

Lucien,

Eu agreguei a sugestão do Eri com o comando
ls -ltr *.xml|tail -1|cut -d _ -f3-|rev|cut -d . -f2-|rev

e a dica do Julio com o for. Mas o comando que vc colocou abaixo realmente
não traz o timestamp da forma correta. Veja:

/home/amfilho/catalogs> ls -t *.xml | head -1 | cut -f2- -d\. | cut -f1-5
-d\.
15.48.34.797542.xml

E na outra forma:

/home/amfilho/catalogs> ls -ltr *.xml|tail -1|cut -d _ -f3-|rev|cut -d .
-f2-|rev
2009-07-26.15.48.34.797542

Com o rev ficou facil fazer o cut. (acabei de aprender mais esta dica. :-)

Abs!

Alicino

2009/7/28 Lucien Raven <address@hidden>

>
>
>
> Olá a todos.
>
> Só fiquei com a pulga atrás da orelha no seguinte...
>
> Não seria: cut -f2- -d\. ??
>
> Mas isso ainda manteria a extensão do nome do arquivo (.xml), então:
>
> cut -f2- -d\. | cut -f1-5 -d\.
>
> Abraços,
>
> LR :>
>
> --- Em ter, 28/7/09, Alicino <address@hidden <alicino%40gmail.com>>
> escreveu:
>
>
> > De: Alicino <address@hidden <alicino%40gmail.com>>
> > Assunto: Re: [shell-script] Uma sugestao de cut ou algo melhor
> > Para: address@hidden<shell-script%40yahoogrupos.com.br>
> > Data: Terça-feira, 28 de Julho de 2009, 16:24
>
> > Julio,
> >
> > Vc e o Eri mataram a questão. É isso mesmo. No final
> > seria com o cut a forma
> > que teria que ser feita.
> >
> > O for tb ajudou bastante.
> >
> > Agradeço a todos pela ajuda!
> >
> > Abs!
> >
> > Alicino
> >
> >
> > 2009/7/28 Julio C. Neves <address@hidden<julio.neves%40gmail.com>
> >
> >
> > >
> > >
> > > Desculpe Alicino, não havia entendido. Agora acho que
> > entendi. Vejamos:
> > >
> > > Pegando o timestamp da última "leva":
> > >
> > > Ultimo=$(ls -t *.xml | head -1 | cut -f. -d2-)
> > >
> > > Isto é, fiz um ls por ordem cronológica. Com o head
> > peguei o primeiro, isto
> > > é, o último que foi gerado e com o cut, peguei
> > somente seu timestamp.
> > >
> > > Agora se os diretórios forem esparsos pelo disco,
> > passe-os como parâmetro
> > > deste script e faça:
> > >
> > > for Dir
> > > do
> > > ls *.$Ultimo # ou ls *.$(ls -t | grep '^-' | head -1 |
> > cut -f. -d2-)
> > > done
> > >
> > > Se os diretórios forem abaixo de um mesmo diretório
> > pai, faça:
> > >
> > > find /diretorio/pai -name \*.Ultimo -print
> > >
> > > --
> > > Abraços,
> > > Julio
> > > Cursos de Shell e Zenity?
> > > - Em SP ligue (11) 2125-4747;
> > > - Em DF ligue (61) 3223-3000;
> > > - No RJ ligue (21) 2561-0867;
> > > - Turmas fechadas em outras cidades ligue (21)
> > 8112-9988.
> > >
> > > 2009/7/28 Alicino <address@hidden <alicino%40gmail.com>
> > <alicino%40gmail.com>>
>
> > >
> > > >
> > > >
> > > > Julio,
> > > >
> > > > Se fosse só isso eu estaria feliz, mas
> > infelizmente não.... :-(
> > > >
> > > > Todo dia são gerados 3 ou 4 "levas" de arquivos
> > xmls, cada um com
> > > > timestamps
> > > > diferentes.
> > > > Obviamente por serem do mesmo dia, o padrão
> > 2009-07-28 está presente em
> > > > todos, de forma que só $(date "+%Y-%m-%d") não
> > adianta.
> > > >
> > > > Eu preciso capturar o timestamp da *última leva*
> > de xmls, pq senão com um
> > > > grep igual ao acima eu levaria tudo do dia para
> > um move e não quero isso.
> > > > Quero apenas os últimos criados.
> > > >
> > > > Entenda por "leva" cerca de 30 xmls em 5
> > diretórios diferentes, num total
> > > > de
> > > > 150 xmls.
> > > >
> > > > Se não ficou bem claro, vou tentar dar um
> > exemplo melhor para apenas um
> > > > diretório que acontece isso, mas o timestamp é
> > o mesmo para os 150 xmls
> > > dos
> > > > 5 diretórios de uma leva criada.
> > > >
> > > > /home/amfilho/catalogs/archive
> > > > CATALOGS_DETAILS_2009-07-27.10.08.01.254895.xml
> > > > UPGRADES_DEL_2009-07-27.10.08.01.254895.xml
> > > > DELETION_2009-07-27.10.08.01.254895.xml
> > > > PRODUCTS_IMAGES_2009-07-27.10.08.01.254895.xml
> > > > CATALOGS_DATA_2009-07-27.16.18.22.384888.xml
> > > > UPGRADES_FEEDS_2009-07-27.16.18.22.384888.xml
> > > >
> > > > DELETION_2009-07-27.16.18.22.384888. xml
> > > > PRODUCTS_PICTURES_2009-07-27.16.18.22.384888.xml
> > > > CATALOGS_NUMBER1_2009-07-27.21.28.40.882542.xml
> > > >
> > UPGRADES_INFORMATION_2009-07-27.21.28.40.882542.xml
> > > > DELETION_TOCHECK_2009-07-27.21.28.40.882542.xml
> > > > PRODUCTS_JPGS_2009-07-27.21.28.40.882542.xml
> > > >
> > > > A grande dica que eu vejo é tentar pegar o
> > timestamp DO ÚLTIMO HORÁRIO
> > > > GERADO, mas isso é o que eu não sei como fazer.
> > Pq eu semrpe vou querer
> > > > mover o último gerado, sempre será ele e não
> > os anteriores.
> > > >
> > > > Mais uma vez agradeço as sugestões e ajuda
> > nesta questão.
> > > >
> > > > Abs!
> > > >
> > > > Alicino
> > > >
> > > > 2009/7/28 Julio C. Neves <address@hidden<julio.neves%40gmail.com>
> <julio.neves%40gmail.com><julio.neves%
>
> > > 40gmail.com>>
> > > >
> > > > >
> > > > >
> > > > > Se vc fizer:
> > > > >
> > > > > ls | grep $(date "+%Y-%m-%d")
> > > > >
> > > > > Terá todos os arquivos gerados hoje. É
> > isso que vc queria?
> > > > > --
> > > > > Abraços,
> > > > > Julio
> > > > > Cursos de Shell e Zenity?
> > > > > - Em SP ligue (11) 2125-4747;
> > > > > - Em DF ligue (61) 3223-3000;
> > > > > - No RJ ligue (21) 2561-0867;
> > > > > - Turmas fechadas em outras cidades ligue
> > (21) 8112-9988.
> > > > >
> > > > > 2009/7/27 Cristiano Amaral <address@hidden<cristianoeinar%40gmail.com>
> <cristianoeinar%40gmail.com>
> > > <cristianoeinar%40gmail.com>
> > > > <cristianoeinar%40gmail.com>
> > > > > >
> > > > >
> > > > >
> > > > > >
> > > > > >
> > > > > > Alcino, se entendi bem é só para
> > pegar os arquivo com a data atual, é
> > > > > > isso? Se for isso é mais fácil
> > utilizar o find + xargs...
> > > > > >
> > > > > >
> > > > >
> > > > > [As partes desta mensagem que não continham
> > texto foram removidas]
> > > > >
> > > > >
> > > > >
> > > >
> > > > --
> > > > [ ]´s
> > > >
> > > > Alicino de Moura Filho
> > > > http://alicino.com.br/blog/
> > > > address@hidden <alicino%40gmail.com>
> > <alicino%40gmail.com> <alicino%40gmail.com>
> > > > Campinas-SP
> > > >
> > > > [As partes desta mensagem que não continham
> > texto foram removidas]
> > > >
> > > >
> > > >
> > >
> > > [As partes desta mensagem que não continham texto
> > foram removidas]
> > >
> > >
> > >
> >
> >
> >
> > --
> > [ ]´s
> >
> > Alicino de Moura Filho
> > http://alicino.com.br/blog/
> > address@hidden <alicino%40gmail.com>
> > Campinas-SP
> >
> >
> > [As partes desta mensagem que não continham texto foram
> > removidas]
> >
> >
> >
> > ------------------------------------
> >
> > ----------------------------------------------------------
> > Esta lista não admite a abordagem de outras liguagens de
> > programação, como perl, C etc. Quem insistir em não
> > seguir esta regra será moderado sem prévio aviso.
> > ----------------------------------------------------------
> > Sair da lista: address@hidden<shell-script-unsubscribe%40yahoogrupos.com.br>
> > ----------------------------------------------------------
> > Esta lista é moderada de acordo com o previsto em
> http://www.listas-discussao.cjb.net
> > ----------------------------------------------------------
> > Servidor Newsgroup da lista: news.gmane.org
> > Grupo: gmane.org.user-groups.programming.shell.brazil
> >
> > Links do Yahoo! Grupos
> >
> >
> >
> >
>
> __________________________________________________________
> Veja quais são os assuntos do momento no Yahoo! +Buscados
> http://br.maisbuscados.yahoo.com
>  
>



-- 
[ ]´s

Alicino de Moura Filho
http://alicino.com.br/blog/
address@hidden
Campinas-SP


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



reply via email to

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