#! /usr/bin/env python # -*- coding: iso-8859-15 -*- # Script de suppression des pdfs trop vieux et des descriptions perverties. # Codé par Francois # Licence : GNU General Public Licence, version 2 import os,sys,time sys.path.append('/usr/script/impression') import class_impression #espérance de vie d'un pdf en seconde duree_vie_pdf=3600 #répertoire racine des dossier d'impression data_dir='/var/spool/impression/' def suppr_vieux_pdf(arg,dir_name,list_file): #print dir_name+':\n' list_desc=filter(lambda x : (x.endswith('.desc')),list_file) if list_desc<>[]: #Ouverture des descriptions et suppression du pdf si nécessaire for nom_fichier_desc in list_desc: fic_impr=class_impression.fichier_impression() fic_impr.nom_fichier_desc=os.path.join(dir_name,nom_fichier_desc) fic_impr.read_desc() if fic_impr.nom_fichier_pdf=='': print '\t'+fic_impr.nom_fichier_pdf+' supprimé et\n' print '\t'+fic_impr.nom_fichier_desc+' supprimé car nom_fichier_pdf inconnue\n' os.remove(fic_impr.nom_fichier_desc) elif fic_impr.modif_epoch==None: print '\t'+fic_impr.nom_fichier_pdf+' supprimé et\n' print '\t'+fic_impr.nom_fichier_desc+' supprimé car modif_epoch inconnue\n' os.remove(fic_impr.nom_fichier_pdf) os.remove(fic_impr.nom_fichier_desc) elif (time.time()-fic_impr.modif_epoch)>duree_vie_pdf and os.access(fic_impr.nom_fichier_pdf,os.F_OK): os.remove(fic_impr.nom_fichier_pdf) #print '\t'+fic_impr.nom_fichier_pdf+" supprimé\n" fic_impr.imprime=-4 fic_impr.sauve_desc() def main(): #print 'Suppression des descriptions perverties' #print 'Suppression des fichiers pdf vieux de plus de '+str(duree_vie_pdf)+'s' os.path.walk(data_dir,suppr_vieux_pdf,None) main()