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

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

Re: [shell-script] SubDiretório mais antigo


From: Helder Jean
Subject: Re: [shell-script] SubDiretório mais antigo
Date: Sat, 14 May 2005 13:30:33 -0300
User-agent: Debian Thunderbird 1.0 (X11/20050116)

Cristiano wrote:
Olá lista,

Gostaria que o meu script entrasse em um diretório e deletasse o subdiretório 
mais
antigo.

Já tenho um script rodando que faz
if [SubDiretorio1] -ot [SubDiretorio2] && [SubDiretorio1 -ot SubDiretorio3] &&
.....................; then
rm -rf SubDiretorio1;
elif [SubDiretorio2] -ot [SubDiretorio3] && [SubDiretorio2] -ot [SubDiretorio4]
..........................

Só que eu tenho que fazer isso com cada subdiretório comparando com todos os 
outros
subdiretórios dessa pasta. Tenho sempre 8 subdiretórios nessa pasta e tenho que
deletar o mais antigo para criar o novo. O script esta funcionando mas esta 
muito
longo.

Alguem tem alguma ideia?


  Olá,

Considerando que você tem só esses 8 subdiretórios nesse diretório (e eventualmente alguns arquivos), você poderia fazer o seguinte dentro dele:
  rm -rf $(ls -tl | grep "^d" | awk '{print $8}' | tail -1)

O ls vai listar o conteúdo do diretório baseado na data de modificação, do mais novo pro mais antigo. O grep vai assegurar que você está pegando somente os diretórios lá dentro (caso haja arquivos). O awk seleciona somente o nome dos diretórios baseado na coluna, e o tail seleciona somente a última entrada. A saída desses comandos encadeados vai ser o diretório mais antigo, que vai ser jogado no rm pra que seja removido.

[]'s


--
Helder Jean  <Helder.J[at]gmx.net>
Gerência de Redes - Superintendência de Informática - UFRN
NARIS/UFRN -  Nucleo de Atendimento e Resposta a Incidentes de Seguranca
Linux Registered User #229979 - GnuPG KeyID: 0x46EE1E86
------------------------------------------------------------------------



reply via email to

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