|  | 		    
					
        
         
          
         
	
          | |  | Dato for fire uger siden Fra : Morten Bakkedal
 | 
 Dato :  10-06-02 21:54
 | 
 |  | Som en del af et automatisk backup-system bruger jeg følgende
 kommando:
 
 tar -czf /backup/linux$(date +%Y%m%d).tar.gz /etc /home
 
 Det virker også fint - der bliver dannet filer med navne på formen
 linux20020610.tar.gz.
 
 Imidlertid kunne jeg godt tænke mig at slette gamle
 backup-filer. Hvordan kan man skrue en kommando sammen, der kan give
 mig datoen på dagen for fire uger siden, så jeg kan slette de gamle
 filer.
 
 Det lader ikke til at date kan klare dette.
 
 Med venlig hilsen
 
 Morten Bakkedal
 
 
 |  |  | 
  Byrial Jensen (10-06-2002) 
 
	
          | |  | Kommentar Fra : Byrial Jensen
 | 
 Dato :  10-06-02 22:03
 | 
 |  | Morten Bakkedal <news20020523@bakkeland.dk> skrev:
 > backup-filer. Hvordan kan man skrue en kommando sammen, der kan give
 > mig datoen på dagen for fire uger siden, så jeg kan slette de gamle
 > filer.
 >
 > Det lader ikke til at date kan klare dette.
 
 GNU date kan en del:
 
 $ date --date="4 weeks ago" +%Y%m%d
 20020513
 
 
 |  |  | 
  Adam Sjøgren (10-06-2002) 
 
	
          | |  | Kommentar Fra : Adam Sjøgren
 | 
 Dato :  10-06-02 22:26
 | 
 |  | On 10 Jun 2002 22:53:44 +0200, Morten Bakkedal wrote:
 
 > Det lader ikke til at date kan klare dette.
 
 Det tror jeg godt den kan, men er det ikke nemmere at bruge find?
 
 find ./ -mtime +30
 
 eller noget i den dur?
 
 
 Mvh.
 
 --
 "And if you complain once more                                Adam Sjøgren
 You'll meet an army of me"                              asjo@koldfront.dk
 
 
 |  |  | 
  Morten Bakkedal (10-06-2002) 
 
	
          | |  | Kommentar Fra : Morten Bakkedal
 | 
 Dato :  10-06-02 22:37
 | 
 |  | Adam Sjøgren wrote:
 
 > Det tror jeg godt den kan, men er det ikke nemmere at bruge find?
 >
 >  find ./ -mtime +30
 >
 > eller noget i den dur?
 
 Måske. Til gengæld synes risikoen for at jeg får slettet en hel masse
 at være mindre, når jeg næsten eksplicit angiver et filnavn ved en
 kommando af typen:
 
 rm /backup/linux$(date --date="4 weeks ago" +%Y%m%d).tar.gz
 
 Med venlig hilsen
 
 Morten Bakkedal
 
 
 |  |  | 
  Adam Sjøgren (10-06-2002) 
 
	
          | |  | Kommentar Fra : Adam Sjøgren
 | 
 Dato :  10-06-02 22:50
 | 
 |  | On 10 Jun 2002 23:37:14 +0200, Morten Bakkedal wrote:
 
 > Måske. Til gengæld synes risikoen for at jeg får slettet en hel
 > masse at være mindre, når jeg næsten eksplicit angiver et filnavn
 > ved en kommando af typen:
 
 > rm /backup/linux$(date --date="4 weeks ago" +%Y%m%d).tar.gz
 
 find /backup/ -mtime +30 -name "linux????????.tar.gz" | xargs rm
 
 Smag og behag...
 
 (Der er naturligvis den forskel at find-modellen sletter alle ældre
 end, date-modellen skal køres hver dag).
 
 
 Mvh.
 
 --
 "And if you complain once more                                Adam Sjøgren
 You'll meet an army of me"                              asjo@koldfront.dk
 
 
 |  |  | 
   Morten Bakkedal (10-06-2002) 
 
	
          | |  | Kommentar Fra : Morten Bakkedal
 | 
 Dato :  10-06-02 23:24
 | 
 |  | 
 
            Adam Sjøgren wrote:
 >   find /backup/ -mtime +30 -name "linux????????.tar.gz" | xargs rm
 > 
 > Smag og behag...
 Jeg er overbevist.    Med venlig hilsen
 Morten Bakkedal
            
             |  |  | 
  Mogens Christensen (11-06-2002) 
 
	
          | |  | Kommentar Fra : Mogens Christensen
 | 
 Dato :  11-06-02 22:13
 | 
 |  | 
 > tar -czf /backup/linux$(date +%Y%m%d).tar.gz /etc /home
 >
 > Det virker også fint - der bliver dannet filer med navne på formen
 > linux20020610.tar.gz.
 >
 > Imidlertid kunne jeg godt tænke mig at slette gamle
 > backup-filer. Hvordan kan man skrue en kommando sammen, der kan give
 > mig datoen på dagen for fire uger siden, så jeg kan slette de gamle
 > filer.
 
 Tjah.. Smarte indlæg de allesammen kommer med. Men jeg har et lignende
 "backup-program" der dog kun går en enkelt uge tilbage. Det har jeg gjort
 ved at sige:
 kopi=/var/backups/etccopy$(date +%a).tar
 Altså bare ta' ugedagen, og på den måde overskriver den jo sig selv efter en
 uge. Ikke. :)
 I dit tilfælde ville det se ud som noget i retning af:
 tar -czf /backup/linux$(date +%d).tar.gz /etc /home
 Og så kommer dine filer til at hedde noget med 'linux11.tar.gz', og bliver
 derved overskrevet helt automatisk efter hver måned.
 
 /Mogens Christensen
 
 
 
 
 |  |  | 
 |  |