Ich habe meinen Code wie folgt -
#!/usr/bin/env python
import time, glob, os, sys
from datetime import date, timedelta
try:
dpath = sys.argv[1]+"/"
except:
print "Verwendung: " + sys.argv[0] +" "
sys.exit(1)
print dpath
day_minus_mtime = time.mktime(date.today().timetuple())
g = glob.glob(dpath+"*")
for f in g:
try:
if day_minus_mtime > os.path.getmtime(f):
os.remove(f)
print "Entfernt: "+f
except OSError, e:
print "Nicht in der Lage zu entfernen: "+f , e
Ich glaube, dass os.remove(datei) äquivalent zu "rm datei" in Linux ist.
Ich würde gerne die äquivalente Funktion für "rm -f datei" kennen. Erzwingt das Entfernen einer Datei oder erzwingt das Entfernen des Dateipfads vom Verzeichnis.
Außerdem versucht der obige Code, Dateien älter als heute zu löschen. Ich habe eine Situation, in der die Dateien nicht gelöscht werden, da sie aufgrund des Besitzes "schreibgeschützt" sind. Aber wenn ich "rm -f" auf dieselbe Datei verwende, wird sie gelöscht.
Ich glaube, es ist besser, eine Frage zu stellen, auch wenn sie dumm erscheint für euch selbst