ANTILOG, MORT AUX .LOG

Signaler
Messages postés
4
Date d'inscription
vendredi 19 mai 2006
Statut
Membre
Dernière intervention
1 mars 2010
-
Messages postés
45
Date d'inscription
samedi 3 mai 2003
Statut
Membre
Dernière intervention
25 janvier 2011
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/51345-antilog-mort-aux-log

Messages postés
45
Date d'inscription
samedi 3 mai 2003
Statut
Membre
Dernière intervention
25 janvier 2011

Exact XELOLIN
sauf que sous windows ou wine ca marchera mieu avec (dir+"\"+a) et delet("c:\")
Messages postés
336
Date d'inscription
samedi 26 novembre 2005
Statut
Membre
Dernière intervention
8 novembre 2011
2
Au lie de créer une liste de dossier au debut, pourquoi ne pas faire :

def delet (dir):
for a in os.listdir(dir):
if os.path.isdir(a) :
delet(dir+"/"+a)
elif a[4:]==".log":
os.remove(dir+"/"+a)

delet("c:/")

ça evite d'avoir tout l'aboressance de la machine en mémoire vive...

En tout cas, même si ta source est un peu légère, elle a une uilitée, et je te donne donc 6/10.
Messages postés
3
Date d'inscription
mercredi 12 août 2009
Statut
Membre
Dernière intervention
7 mars 2010

Bonne idée manquerai la partie choix du lecteur (question soulignée par SNOOKY68). Pas testé cependant ! Avec une petite interface graphique (choix lecteur/chemin + 2 boutons quitter et ok) ce serai beaucoup plus vendeur :)

Merci du partage dans tous les cas :)

++
Messages postés
4
Date d'inscription
vendredi 19 mai 2006
Statut
Membre
Dernière intervention
1 mars 2010

Salut,

Je n'est pas testé le code, juste regardé! (J'y tien à mes logs!!! lol)
Cependant, j'ai quelques remarques pour améliorer ton bout de code.

raw_input("\nVoulez vous supprimer tous les fichiers .log ?")
- Oui... c'est bien, mais si je veut pas? il n'y a pas possibilité de faire oui ou non! Donc si je veut pas je suis obligée de fermer le programme à la "barbare"! Donc peut mieux faire, un simple if..else suffirait, puis un try..except pour terminer le programme.

fichier[-4:len(fichier)]:
Pourquoi ne pas utiliser os.path.splitext? Tu a importé ton os.path en plus!

if fichier[-4:len(fichier)] == ".log" and os.path.isfile(fichier):
L'inverse est mieux! Vérifie d'abord que c'est un fichier et ensuite vérifie que c'est un log! Les if s'exécute dans l'ordre en python!

fichier in listdirectory("c:"):
... mis à part le faite que sous linux sa marche pas (je suis pas sur qu'il y ait des fichiers los sous linux en plus) bref! Le problème la, c'est que mon disque c'est "D:"! Je pense qu'il y a mieux pour listé les partitions!

Voilà, au premier coup d'œil c'est tout! A toi de jouer!! ;)