Question Suppression répertoire vide

Plus d'informations
il y a 15 ans 1 mois #9381 par Leharivel
Bonjour,

J'ai trouvé sur le site un script qui me permet de supprimer les fichiers dans les dossiers et sous-dossiers à partir d'une date.

Cela fonctionne très bien mais j'ai encore les répertoire

Je voudrais savoir s'il existe une commande qui me permet par exemple de lister les répertoires vide et de les supprimer en suite

Sous cmd cela fonctionne ci-dessou la commande :

for /f \"tokens=*\" %i in ('dir/a:d /b /s ^| sort /r') do @rd \"%i\"

Je voudrais faire la même commande sous powershell<br><br>Message édité par: anth14, à: 13/04/11 20:11

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

Plus d'informations
il y a 15 ans 1 mois #9384 par Arnaud Petitjean
Salut Anth, sois le bienvenu dans le forum ! ;)

Essaie cette ligne de commandes :

[code:1]
PS &gt; Get-ChildItem C:\ -recurse | where {$_.mode -like 'd*' } | where { @(gci $_.Fullname).count -eq 0} | remove-item
[/code:1]

Avant de lancer la commande je te conseille d'enlever le Remove-item, histoire de vérifier que les répertoires listés soient bien vides (ce qui semble être le cas chez moi).

Sinon tu peux aussi ajouter le commutateur -WhatIf sur le remove-item afin de simuler la suppression.

[code:1]
PS &gt; Get-ChildItem C:\ -recurse | where {$_.mode -like 'd*' } | where { @(gci $_.Fullname).count -eq 0} | remove-item -Whatif
[/code:1]

@+

Arnaud

MVP PowerShell et créateur de ce magnifique forum :-)
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?

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

Plus d'informations
il y a 15 ans 1 mois #9397 par Leharivel
Réponse de Leharivel sur le sujet Re:Suppression répertoire vide
Merci à toi Arnaud

Je viens de tester la ligne de code

cela fonctionne, mais cela ne supprime pas les dossiers vide enfant

J'ai trouvé cela sur le net


[code:1]#==========================================================================
# SCRIPT SUPPRESSION : Des dossiers vides
#==========================================================================

function findolder($apath) {
$items = get-childitem $apath -force
foreach($fileordir in $items) {
if($fileordir.PSIsContainer) {
findolder($fileordir.FullName)
$childrens = get-childitem $fileordir.FullName -force
if($childrens -eq $null) {
remove-item $fileordir.FullName
}
}
}
}

findolder(\&quot;c:\test\&quot;«»)[/code:1]

cela fonctionne

Merci encore Arnaud<br><br>Message édité par: Arnaud, à: 14/04/11 23:28

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

Plus d'informations
il y a 15 ans 1 mois #9400 par Arnaud Petitjean
Pour que mon script supprime les répertoires enfants, ajoute le paramètre -recurse à la commande Remove-item.

Arnaud

MVP PowerShell et créateur de ce magnifique forum :-)
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?

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

Plus d'informations
il y a 15 ans 1 mois #9421 par Leharivel
Réponse de Leharivel sur le sujet Re:Suppression répertoire vide
Bonjour Arnaud,

Cela fonctionne aussi

Merci

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

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