Avatar billede zaar Nybegynder
25. juli 2006 - 12:13 Der er 3 kommentarer

Sletning af filer efter dato

Hej Eksperter.
Jeg har brug for et lille script jeg kan anvende til at slette filer automatisk når de bliver "x" antal dage gamle.

Firmaets exchange server har efterhånden en del log filer, og for ikke hele tiden at skulle sidde og slette disse manuelt, vil jeg nu gøre dette med et script og så anvende taskmanageren til at køre sciptet planmæssigt.

Jeg ønsker et script hvor jeg kan angive stien til hvilken folder der skal kigges i, samt der skal være mulighed for at definere hvor gamle filerne må være inden de bliver slettet.

Nogen der kan hjælpe med sådan et lille scipt?
Avatar billede bertelbrander Novice
25. juli 2006 - 23:38 #1
Jeg har en beskrivelse af et python script her:
http://home20.inet.tele.dk/midgaard/tipmisc20050111.html

Kan det bruges?
Avatar billede zaar Nybegynder
26. juli 2006 - 10:28 #2
Det da et skridt i den rigtige retning.
Dog er jeg på udkig efter noget der ikke sletter i under mapper, da jeg her har filer jeg ikke ønsker slettet.

Så den er der altså stadig ikke helt.
Avatar billede bertelbrander Novice
27. juli 2006 - 00:53 #3
Her er en version der kun kikker i den ene mappe, brug den på samme måde som den anden.

Slet # i sidste linie for at få den til at slette, ellers vil den kun fortælle hvilke filer der er for gamle.

import time, os, sys, fnmatch
from stat import *
now = time.time()

MyPath='d:\\temp'
MyExt='*.*'
MyAge=30

if sys.argv[1:] :
  MyPath=sys.argv[1]
  if sys.argv[2:] :
      MyExt=sys.argv[2]
      if sys.argv[3:] :
        MyAge=sys.argv[3]

files = os.listdir(MyPath)
ffiles = fnmatch.filter(files, MyExt)
for file in ffiles :
  FullPath = os.path.join(MyPath, file)
  mode = os.stat(FullPath)[ST_MODE]
  if not S_ISDIR(mode):
      age = now - os.stat(FullPath)[ST_MTIME]
      age = age/(60*60*24)
      if age > float(MyAge) :
        print FullPath, "is to old:", int(age), "days"
        # os.remove(FullPath)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester