Rensa filer automatiskt i Linux

Home » Linux » Rensa filer automatiskt i Linux
Linux Inga kommentarer

Om man av någon anledning vill rensa en mapp på filer automatiskt via ett schema så kan man ställa in detta via ett bash-script och  Crontab

Kan vara bra om man har något system som genererar en stor mängd filer som inte behöver sparas längre än en viss period.

Jag använde mig av denna guide för att ställa in crontab att rensa filer från en av mina nätverkshårddiskar

https://www.maketecheasier.com/delete-old-files-in-a-folder-automatically-in-linux/

 

  1. Öppna ett textredigeringsprogram tex nano och skriv in följande
  2. #!/bin/bash
     
    find /path/to/directory/* -mtime +t -exec rm -f {} \;

    ändra +t till den tid i dagar som du vill ta bort tex +1 så tar den bort alla filer som är äldre än 1 dag i den sökväg du angav i /path/to/directory/*

  3. spara i din hemmakatalog med lämpligt namn tex find-delete
  4. öppna hemmakatalogen och högerklicka på filen och välj att filen får köras som programfind-set-file-permission
  5. Öppna ett terminalfönster och skriv: crontab -e
  6. Hur ofta cron jobbet ska köras skrivs i formatet
    minute hour day-of-month month day-of-week command
  7. för att tex köra skriptet varje timme skulle det se ut så här på en ny rad i crontab
    00 * * * * /home/dinanvändare/find-delete
  8. om du redigerar via nano så trycker du ctrl o för att spara och ctrl x för att stänga.

LEAVE A COMMENT