Question Supression de fichiers

Plus d'informations
il y a 8 ans 3 mois #24637 par Toper
Supression de fichiers a été créé par Toper
Bonjour,
je souhaite supprimer des fichiers anterieurs à la date en cours - 1 jour (donc à la date d'hier).
Voici mon code:
[code:1]$DaysBack = \"-1000\"
$CurrentDate = Get-Date
$DatetoDelete = $CurrentDate.AddDays($DaysBack)
Get-ChildItem -Recurse -path \"\\serveur\partage\" -Include \"*.pdf\" -Force | Where-Object { $_.LastWriteTime -lt $DatetoDelete } >> c:\user\list.txt
$gci123soleil.count[/code:1]
Mais si je bouge mon $DaysBack, j'ai toujours le même \"count\"....
Que ce soit du PDF, du doc, tous types de fichiers, j'ai soit le compte total, soit \"0\"...

Powershell: la vie est belle :)

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 8 ans 3 mois #24638 par Jpo
Réponse de Jpo sur le sujet Re:Supression de fichiers
Bonjour,

Ton code n'est pas complet, la variable gci123soleil n'est pas défini (même si je me doute qu'il contient ton gci), et ton code fait un -1000 jours !

Sinon décompose décompose!
Partisant du foreach-object j'aurais fait qqch comme ça :
[code:1]
$DaysBack = -1
$CurrentDate = Get-Date
$DatetoDelete = $CurrentDate.AddDays($DaysBack)
Write-host $DatetoDelete
# Get-ChildItem -Recurse -path \"\\serveur\partage\" -Include \"*.pdf\" -Force | Where-Object { $_.LastWriteTime -lt $DatetoDelete } >> c:\user\list.txt


Get-ChildItem -Recurse -path \"\\serveur\partage\" -Include \"*.pdf\" -Force | foreach-Object {
$LastWriteTime = $null
$LastWriteTime = $_.LastWriteTime
if ($LastWriteTime -lt $DatetoDelete) {
$_.cequetuveux | out-file .\test.txt -append -encoding UTF8
}
} [/code:1]

Cordialement,
Jonathan

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 8 ans 3 mois #24640 par Toper
Réponse de Toper sur le sujet Re:Supression de fichiers
Je suis une sous-quiche en PSH....
Effectivement j'avais oublié un bout de code dans le copier/coller...
Pour ma culture personnelle, peux-tu m'expliquer le pourquoi de ces 2 lignes ?
[code:1]$LastWriteTime = $null
$LastWriteTime = $_.LastWriteTime
[/code:1]

Powershell: la vie est belle :)

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 8 ans 3 mois #24641 par Toper
Réponse de Toper sur le sujet Re:Supression de fichiers
Je viens de tester ton code pour qu'il m'affiche les PDF d'aujourd'hui: il ne m'en trouve aucun alors qu'il y en a des milliers...
[code:1]Get-ChildItem -Recurse -path \"\\serveur\partage\" -Include \"*.pdf\" -Force | foreach-Object {
$LastWriteTime = $null
$LastWriteTime = $_.LastWriteTime
if ($LastWriteTime -eq (get-date) {
Write-Host $_.LastWriteTime | out-file c:\test.txt -append -encoding UTF8
}
} [/code:1]

Powershell: la vie est belle :)

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 8 ans 3 mois #24644 par Jpo
Réponse de Jpo sur le sujet Re:Supression de fichiers
J'aime bien stocker et initialiser mes variable, attend je retest le code !
Il semble qu'il manquait des parenthèses dans ton code
Celui-ci est fonctionnel :

[code:1]
Get-ChildItem -Recurse -path \".\\" -Include \"*.pdf\" | foreach-Object {

$LastWriteTime = $null
$Name = $null
$LastWriteTime = $_.LastWriteTime
$Name = $_.Name
write-host \"1 - $LastWriteTime - $Name\"
if ($LastWriteTime -eq (get-date)) {
$_.LastWriteTime | out-file c:\test.txt -append -encoding UTF8
}

}[/code:1]

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 8 ans 3 mois #24645 par Toper
Réponse de Toper sur le sujet Re:Supression de fichiers
Que je fasse un \"-lt\", un \"-eq\" ou un \"-gt\" sur \"get-date\", il me ramène les mêmes fichiers (tous les PDF contenus dans le dossier sont d'aujourd'hui).:pinch:

Powershell: la vie est belle :)

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.050 secondes
Propulsé par Kunena