2021-04-07 11:53:57 +02:00
|
|
|
#!/usr/bin/pwsh
|
2020-12-29 15:14:21 +01:00
|
|
|
<#
|
2021-04-07 15:17:49 +02:00
|
|
|
.SYNTAX list-empty-dirs.ps1 [<dir-tree>]
|
2021-03-22 20:10:18 +01:00
|
|
|
.DESCRIPTION lists empty subfolders within the given directory tree
|
|
|
|
.LINK https://github.com/fleschutz/PowerShell
|
|
|
|
.NOTES Author: Markus Fleschutz / License: CC0
|
2020-12-29 15:14:21 +01:00
|
|
|
#>
|
2020-10-10 18:18:53 +02:00
|
|
|
|
2021-02-10 12:27:38 +01:00
|
|
|
param($DirTree = "")
|
2020-10-10 18:18:53 +02:00
|
|
|
|
2021-02-18 20:17:55 +01:00
|
|
|
if ($DirTree -eq "" ) {
|
|
|
|
$DirTree = read-host "Enter the path to the directory tree"
|
|
|
|
}
|
|
|
|
|
2020-10-10 18:18:53 +02:00
|
|
|
try {
|
2021-02-10 18:54:31 +01:00
|
|
|
write-progress "Listing empty directories in $DirTree..."
|
|
|
|
[int]$Count = 0
|
2021-02-27 11:43:38 +01:00
|
|
|
Get-ChildItem $DirTree -attributes Directory -recurse | Where {$_.GetFileSystemInfos().Count -eq 0} | ForEach-Object {
|
2021-02-10 18:54:31 +01:00
|
|
|
write-output $_.FullName
|
|
|
|
$Count++
|
|
|
|
}
|
2021-02-27 11:43:38 +01:00
|
|
|
write-host -foregroundColor green "OK - found $Count empty directories"
|
2020-10-10 18:18:53 +02:00
|
|
|
exit 0
|
2020-12-09 10:30:55 +01:00
|
|
|
} catch {
|
2021-02-16 10:03:20 +01:00
|
|
|
write-error "ERROR: line $($_.InvocationInfo.ScriptLineNumber): $($Error[0])"
|
2020-12-09 10:30:55 +01:00
|
|
|
exit 1
|
|
|
|
}
|