Powershell 빈폴더 삭제 script
Windows 에서 폴더 및 파일 관리시 비어 있는 폴더를 삭제 하고 싶은 경우가 있습니다.
그래서 저는 간단하게 빈폴더를 삭제하는 Powershell script 를 만들어서 사용하곤 합니다.
아래 소개한 powershell profile 에 작성해서 사용하면 조금더 편리하게 사용 할 수 있습니다.
http://iamaman.tistory.com/1017
스크립트는 아래와 같습니다. 그냥 하위 폴더는 그냥 두고 현재 폴더만 확인하고 싶은 경우와 빈 폴더만 확인하고 싶은 경우를 위해 recurse 와 Delete 를 옵션으로 줬습니다.
function emptyFolderFind
{
param
(
$folder,
[Switch]$Recurse,
[Switch]$Delete
)
if($Recurse)
{
$a = Get-ChildItem $folder -Recurse | Where-Object {$_.PSIsContainer -eq $True}
}
else
{
$a = Get-ChildItem $folder | Where-Object {$_.PSIsContainer -eq $True}
}
$b = $a | Where-Object {($_.GetFiles().Count -eq 0) -and ($_.GetDirectories().Count -eq 0)}
$b | Select-Object FullName
if ($Delete -and $b)
{
$b | Remove-Item -Force
Write-Host "Empty folder Deleted!!"
}
}
E:\workspace 하위의 폴더 중 빈폴더를 삭제 하기 위해서는 아래와 같은 명령어를 사용합니다.
emptyFolderFind "E:\workspace" -Delete
하위 폴더도 검색하기 위해서는 Recurse 옵션을 주고 아래와 같이 Recurse 하게 검색 및 삭제 할 수 있습니다.
emptyFolderFind "E:\workspace" -Delete -Recurse