L'idée ici est d'avoir une série de mots à chercher dans un fichier.
La série de mots est dans un fichier nommé fichiersource situé dans le même répertoire que le script.
Les mots sont ici recherchés dans un fichier /etc/haproxy/haproxy.cfg
Mon besoin était de valider qu'une série de sites étaient bien déclarés sur un haproxy.
import os
chemin_script = os.path.abspath(__file__) # Obtenir le chemin absolu du script actuel
repertoire_script = os.path.dirname(chemin_script) # Obtenir le répertoire du script
nom_du_script = os.path.basename(__file__) # Obtenir le nom du script
nom_du_script_sans_extension = os.path.splitext(nom_du_script)[0] # Retirer l'éventuel ".py" à la fin
chemin_fichier_sites = repertoire_script + "/fichiersource"
chemin_fichier_dans_lequel_chercher = "/etc/haproxy/haproxy.cfg"
def recherchesite(chemin_fichier_dans_lequel_chercher, unmot):
try:
with open(chemin_fichier_dans_lequel_chercher, 'r') as fichierha:
vartrouve = 0
for ligneha in fichierha:
if unmot in ligneha:
print(f"{unmot}\ttrouvé.")
vartrouve = 1
break
if vartrouve == 0:
print(f"{unmot}\tnon trouvé.")
except FileNotFoundError:
print(f"Le fichier {chemin_fichier_dans_lequel_chercher} n'a pas été trouvé.")
return None
except Exception as e:
print(f"Une erreur s'est produite : {e}")
return None
try:
# Analyser chaque ligne du fichier des sites
with open(chemin_fichier_sites, 'r') as monfichier:
for lignesite in monfichier:
#print(lignesite.rstrip()) #La fonction rstrip est utilisée pour ne pas afficher les sauts de ligne
unmot = lignesite.rstrip()
recherchesite(chemin_fichier_dans_lequel_chercher, unmot)
except FileNotFoundError:
print(f"Le fichier {chemin_fichier_sites} n'a pas été trouvé.")
except Exception as e:
print(f"Une erreur s'est produite : {e}")
Lien vers le fichier : cliquez ici
Article(s) en relation(s)