Vous trouverez ici des scripts pour faciliter la gestion de votre ordinateur. Ils sont proposés tels quels par le rédacteur du message. La team ne vérifie pas la qualité de ces éléments et n'assure pas le support ni la maintenance. Vous les utilisez sous votre seule responsabilité.
Règles du forum Pour les créateurs de scripts
Veuillez noter que les scripts que vous partagez ici sont proposés tels quels et la team ne vérifie pas leur qualité.
Nous vous rappelons que nous n'assurons ni le support ni la maintenance des scripts publiés.
Pour faciliter leur utilisation par les autres membres de la communauté, respectez ces consignes :
.
Utilisez les préfixes de langage pour taguer les messages.
Assurez-vous que vos scripts sont clairs et bien documentés
.
Merci de votre compréhension et de votre contribution.
C'est un script PowerShell qui permet de nettoyer tous les journaux d'événements sur un système Windows.
Le code est commenté et j'ai ajouté une description de l'action de ce script et la manière de l'exécuter.
Il est livré tel quel (testé sur mon Win 11 pro )
# Vérifier si le script est exécuté en tant qu'administrateur
$principal = New-Object Security.Principal.WindowsPrincipal([Security.Principal.WindowsIdentity]::GetCurrent())
if (-not $principal.IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) {
# Redémarrer PowerShell en mode administrateur
Start-Process powershell -ArgumentList "-NoProfile -ExecutionPolicy Bypass -File `"$PSCommandPath`"" -Verb RunAs
exit
}
# Script pour nettoyer tous les journaux d'événements sur un système Windows
# Récupérer la liste de tous les journaux d'événements
$eventLogs = wevtutil el
# Initialiser une liste pour stocker les erreurs
$errors = @()
# Parcourir chaque journal d'événement et le nettoyer
foreach ($log in $eventLogs) {
try {
# Nettoyer le journal d'événement
wevtutil cl $log
Write-Host "Le journal $log a été nettoyé avec succès." -ForegroundColor Green
} catch {
# Stocker l'erreur dans la liste des erreurs
$errorMessage = "Erreur lors du nettoyage du journal $log : $_"
$errors += $errorMessage
Write-Host $errorMessage -ForegroundColor Red
}
}
# Afficher les erreurs après l'exécution
if ($errors.Count -gt 0) {
Write-Host "Des erreurs ont été rencontrées lors du nettoyage des journaux d'événements :" -ForegroundColor Yellow
foreach ($error in $errors) {
Write-Host $error -ForegroundColor Red
}
} else {
Write-Host "Tous les journaux d'événements ont été nettoyés avec succès sans aucune erreur." -ForegroundColor Green
}
# Laisser le message de résultat affiché à l'écran
Write-Host "Appuyez sur une touche pour fermer..." -ForegroundColor Cyan
[System.Console]::ReadKey() | Out-Null
Que fait le script :
Vérification des droits administratifs :
Le script crée un objet WindowsPrincipal pour l'utilisateur actuel et vérifie s'il a les droits d'administrateur.
Redémarrage en mode administrateur :
Si l'utilisateur n'a pas les droits d'administrateur, le script redémarre PowerShell en mode administrateur en utilisant Start-Process avec l'option -Verb RunAs.
Le script s'arrête ensuite avec exit pour empêcher l'exécution de la suite du script sans les droits nécessaires.
Utilise wevtutil el pour obtenir la liste de tous les journaux d'événements.
Parcourt chaque journal et utilise wevtutil cl pour le nettoyer.
Affiche un message de succès pour chaque journal nettoyé.
Capture et affiche, en rouge, toute erreur survenue lors du nettoyage d'un journal spécifique.
En utilisant ce script, si vous l'exécutez sans privilèges d'administrateur, il vous demandera d'entrer les informations d'identification administratives et relancera le script avec les privilèges appropriés.
Comment s'en servir ?
Enregistrer le code dans un fichier txt avec l'extension .ps1 par exemple NettoyerJournaux.ps1
Clic droit sur l'icône du fichier et commande Exécuter avec PowerShell
Un message de résultat apparaît à la fin de l'exécution
Appuyez sur n'importe quelle touche pour fermer le script
Merci pour l'exemplarité de forme ( t'avait déja cela en stock ), je pense que la commu va appréciée ce nouveau forum
Utilité et simplicité feront notre bonheur virtuel en améliorant notre hygiène numérique accessible pour tous, aux builder de faire en sorte que ça reste accessible pour chacun ou pas selon le niveau de compréhension pour l éthique du forum AAZ
Effectivement c'est un exemple de ce qui peut se faire facilement ...
La première partie la vérification et le lancement de PowerShell (PwS) en mode admin est réutilisable "AS IS"
Pour la seconde partie, je l'ai faite hier soir ...Elle est tirée de ma panoplie de commandes utiles en PwS .
pboulanger je te remercie de manière générale pour ta démarche avec ce que tu as déjà publié et ce que tu publieras. Je les lirai pour prendre connaissance des problèmes qu'ils résolvent, mais il est peu probable que je les utilise tant que je ne me sens pas vraiment concerné ou que je ne dispose pas d'un temps suffisant pour explorer ces questions.