Logo ShareMyCode.io ShareMyCode.io
Partagez un extrait de code en quelques secondes.
Ajouter un code
manuel powershell powershell
Voici votre URL de partage
Cliquer pour copier dans le presse-papiers. Copié
Nom du fichier : Analyse-Logs.ps1
# définir les dossiers de travail ;
$Source = "C:\TP-Powershell\02-Logs\Source"
$Exports = "C:\TP-Powershell\02-Logs\Exports"
$Journal = "C:\TP-Powershell\02-Logs\Journal"

# créer les dossiers nécessaires si besoin ;
# Si le dossier Source n'existe pas je le crée
if ((Test-Path $Source) -eq $False){
	# J'entre dans ce if si Source n'existe pas
	New-Item -Path $Source -ItemType Directory
}

# Si le dossier Exports n'existe pas je le crée
if ((Test-Path $Exports) -eq $False){
	# J'entre dans ce if si Exports n'existe pas
	New-Item -Path $Exports -ItemType Directory
}

# Si le dossier Journal n'existe pas je le crée
if ((Test-Path $Journal) -eq $False){
	# J'entre dans ce if si Journal n'existe pas
	New-Item -Path $Journal -ItemType Directory
}

# rechercher tous les fichiers .log dans Source ;
$Fichiers = Get-ChildItem -Path $Source -Filter "*.log"

# Initialiser le rapport et le journal
$Rapport =  "$Exports\rapport.txt"
$Log = "$Journal\journal.log"

Set-Content -Path $Rapport -Value "Rapport d'analyse"
Set-Content -Path $Log -Value "Journal du $(Get-Date)"

# J'ai plusieurs fichiers, je dois faire une boucle (foreach)
foreach ($Fichier in $Fichiers) { # Pour chaque (foreach) fichier ($Fichier) dans (in) la liste des fichiers ($Fichiers)
	# analyser ces fichiers et rechercher les lignes contenant ERROR, FAILED ou WARNING ;
	$Resultat = Select-String -Path $Fichier -Pattern "ERROR","FAILED","WARNING"
	
	# écrire les résultats dans un rapport texte ;
	Add-Content -Path $Rapport -Value $Resultat
	
	# écrire un journal d’exécution dans un autre fichier.
	Add-Content -Path $Log -Value "Fichier $Fichier analysé le $(Get-Date)"
}
Informations
Cet extrait a été créé le
23 Mar 2026 à 14:25:51
Cet extrait expire le
22 Apr 2026 à 15:25:51
Langage :
powershell powershell
Lien
Demander la suppression