Suppression de LOG d'applicatif
Bonjour à tous,
Je cherche à générer un fichier de LOG afin d'indiquer quand a été effectué mon script. Le script supprime des fichiers de LOG d'applications.
J'ai trouvé le script sur internet et je l'ai un peu adapté, je changerais le nom des variables ensuite.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| # Début du script
# Déclaration des variables
$mydata = "C:\bckp\Test1"
$jour = Get-Date
$lastmod = $jour.AddDays(-30)
# requête
Get-Childitem $mydata -recurse -force | Where {$_.LastWriteTime -le "$lastmod"} | Foreach {
If (($_.extension -eq ".log") -or ($_.extension -eq ".svclog")) {
Remove-Item $_.fullname | out-null
}
}
# Fin du script |
Il scan l'arborescence indiqué et supprime les fichiers de plus de 30 jours.
Afin d'être sur que la commande est passé, je voudrais créer un fichier log reprenant certaines informations. J'ai donc modifié le script mais il ne fonctionne pas comme je veux.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
| # Début du script
# Déclaration des variables
$mydata = "C:\bckp\Test1"
$jour = Get-Date
$lastmod = $jour.AddDays(-30)
# Démarrage Log
Start-Transcript C:\bckp\purgelog.log
write-host "Début de la suppression des fichiers"
write-host $mydata
write-host $jour
write-host $lastmod
# requête
Get-Childitem $mydata -recurse -force | Where {$_.LastWriteTime -le "$lastmod"} | Foreach {
If (($_.extension -eq ".log") -or ($_.extension -eq ".svclog")) {
Remove-Item $_.fullname | out-null
# write-host "Deleting File $_.fullname" -foregroundcolor "Red"; Remove-Item $_.fullname | out-null
}
}
write-host $jour
write-host $lastmod
write-host 'Fin de la suppression des fichiers'
# Fin LOG
Stop-Transcript
# Fin du script |
1er problème :
Le fichier est bien généré, mais le contenu est remplacé à chaque fois au lieu d'être implémenté.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| **********************
Début de la transcription Windows PowerShell
Heure de début*: 20140808131416
Nom d'utilisateur*: *
Ordinateur : *
**********************
Transcription démarrée, le fichier de sortie est C:\bckp\purgelog.log
Début de la suppression des fichiers
C:\bckp\Test1
08/08/2014 13:14:16
09/07/2014 13:14:16
08/08/2014 13:14:16
09/07/2014 13:14:16
Fin de la suppression des fichiers
**********************
Fin de la transcription Windows PowerShell
Heure de fin*: 20140808131416
********************** |
Pour implémenter le contenu, j'ai vu >>. Mais je ne sais pas trop ou je dois l'ajouter, car j'ai fait un test mais il m'intégrait pas toutes les informations
Code:
Start-Transcript C:\bckp\purgelog.log
.
Il y a probablement une autre manière de faire... Je continue à chercher.