86 votes

Test Powershell si le dossier est vide

En Powershell, comment puis-je tester si un répertoire est vide ?

77voto

JPBlanc Points 26156

Si vous n'êtes pas intéressé par les fichiers cachés ou les fichiers système, vous pouvez également utiliser Test-Path.

Pour voir s'il existe un fichier dans le répertoire .\temp vous pouvez utiliser :

Test-Path -Path .\temp\*

ou bientôt :

Test-Path .\temp\*

65voto

Boeckm Points 1206

Essayez ceci...

$directoryInfo = Get-ChildItem C:\temp | Measure-Object
$directoryInfo.count #Returns the count of all of the objects in the directory

Si $directoryInfo.count -eq 0 alors votre répertoire est vide.

23voto

MuiBienCarlota Points 150

Pour éviter d'énumérer chaque fichier sous c : \Temp (ce qui peut prendre beaucoup de temps), nous pouvons faire quelque chose comme ça :

if((Get-ChildItem c:\temp\ -force | Select-Object -First 1 | Measure-Object).Count -eq 0)
{
   # folder is empty
}

5voto

Joey Points 148544
filter Test-DirectoryEmpty {
    [bool](Get-ChildItem $_\* -Force)
}

3voto

Denis Besic Points 756

Une ligne :

if( (Get-ChildItem C:\temp | Measure-Object).Count -eq 0)
{
    #Folder Empty
}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X