본문 바로가기
PowerShell

폴더의 파일 목록을 검색해서 처리하는 방법

by 융댜 2019. 4. 17.
반응형

파워쉘에서 폴더의 파일 목록을 검색하려면 Get-ChildItem cmdlet을 사용한다.

 

폴더의 경우 PSIsContainer가 폴더일때 true, 파일이면 false로 처리된다.

 

폴더의 파일 목록을 가져 모든 파일을 처리하는 방법

 

# 처리 대상 폴더
$targetFolder = 'D:'

# $targetFolder의 파일 폴더의 목록을 얻을 수 있습니다.
$itemList = Get-ChildItem $targetFolder
foreach ($item in $itemList)
 {
  	if($item.PSIsContainer)
  {
    # 폴더의 경우의 처리
    Write-Host($item.Name + '는 폴더입니다.')
  }
  else
  {
  	# 파일의 경우 처리
  	Write-Host($item.Name + '는 파일입니다.')
  }
}

 

하위 폴더의 파일목록까지 처리하는 방법

간단하다 Get-Childitem에 -Recurse를 지정하면 된다.

# 처리 대상 폴더
$targetFolder = 'D:'
# $targetFolder의 하위 파일 폴더의 목록까지 얻을 수 있습니다.
$itemList = Get-ChildItem $targetFolder -Recurse
foreach ($item in $itemList)
{
  if($item.PSIsContainer)
  {
    # 폴더의 경우의 처리
    Write-Host($item.Name + '는 폴더입니다.')
  }
  else
  {
    # 파일의 경우 처리
    Write-Host($item.Name + '는 파일입니다.')
  }
}
반응형

댓글