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: Julio C. Neves
Subject: Re: [shell-script] Uma sugestao de cut ou algo melhor
Date: Tue, 28 Jul 2009 15:41:26 -0300

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>

>
>
> 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>>
>
> >
> >
> > 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>
> > >
> >
> >
> > >
> > >
> > > 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>
> Campinas-SP
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>


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



reply via email to

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