Bonjour,
Je cherche à faire mon script sans utiliser grep donc à créer une commande correspondante à celle ci :
grep "Subject: " /tmp/mail.log | grep -v -e "truc" -e "machin" -e "chose" > /tmp/check_mail.log
Voici mon "code", je n'ai aucune fonction ou classe pour l'instant tant que ça marche pas...
Le premier filtre fonctionne, il n'y a que les lignes comprenant "Subject" qui sont ajoutées.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 f = open("/tmp/mail.log",'r') fichier = f.readlines() f.close() r1="Subject:" r2=["truc","machin","chose"] liste=[ ] for ligne in fichier: if r1 in ligne: for x in r2: if x not in ligne: liste.append(ligne) print(liste)
Quand j'affiche la liste les lignes comprenant les 3 mots clés "truc" "machin" "chose" apparaissent
j'ai mis en gras ce qui ne marche pas : la liste des 3 mots clés...
J'ai fais un essai avec un seul mot clé dans la liste r2 ça marche
j'ai afficher les mots clé dans la boucle ça liste bien successivement les 3 mots clés.
Merci d'avance si vous pouvez m'apporter votre aide, je bloque dessus.
Version du Python utilisé sur les serveurs : 2.6.6
Partager