Powershell, 1줄로 특정 날짜에 생성된 파일 찾기

PowerShell

Powershell Oneliner

Powershell 1 을 이용해 특정 날짜 기간에 생성된 파일을 찾기 위해서는 아래 스크립트를 사용하면 된다.

Get-ChildItem -File -Recurse .\ | 
  Where-Object { $_.CreationTime -GT "2024-01-20" -and $_.CreationTime -LT "2024-01-30"} |
   Select-Object -Property CreationTime,Name

위의 스크립트를 실행하면, 현재 디렉토리에서 2024년 1월 20일 부터 2024년 1월 30일 사이에 생성된 파일을 찾아 생성 시간파일명을 출력한다.

Get-ChildItem

Get-ChildItem2으로 사용자가 지정한 경로 .\ 아래에 위치한 파일을 -File 찾는다. 하위 디렉토리가 있을 경우 모두 포함해서 -Recurse 검색한다.

Get-ChildItem -File -Recurse .\

검색 대상 중 파일 형식만 찾기 위해 -File 옵션을 사용했다.

Where-Object

앞의 Get-ChildItem에서 찾아낸 결과를, Where-Object3로 파일 속성 CreationTime이 특정 날짜 범위에 해당하는지 판단한다. 조건에 부합하는 파일만 필터링 된다.

Where-Object { $_.CreationTime -GT "2024-01-20" -and $_.CreationTime -LT "2024-01-30"}

파일의 생성 시간은 CreationTime 속성, 최근 변경 시간은 LastWriteTime 속성으로 확인한다. 날짜 범위 비교를 위해 -GT, -LT, 두 가지 조건에 모두 부합하는 결과를 위해 -AND 연산자를 사용한다.

Select-Object

앞에서 검색 된 파일들의 정보를 출력하기 위해, Select-Object4를 사용해 필요한 속성만 선택한다. 여기서는 특정 기간에 생성된 파일을 찾고자 했으므로, 파일의 두 가지 속성 생성 시각 CreationTime, 파일 이름 Name 을 출력한다.

Select-Object -Property CreationTime,Name

출력 예

위의 파워쉘 스크립트를 실행 하면, 검색 조건에 해당하는 파일을 찾은 경우 해당 파일의 생성 시간이름을 출력한다.

CreationTime            Name
------------            ----
2024-01-22 오후 6:17:14 dnSpy-net-win32.zip
2024-01-22 오후 6:17:17 dnSpy-net-win64.zip
2024-01-22 오후 6:17:22 dnSpy-netframework.zip
2024-01-22 오후 6:19:45 net48.zip
2024-01-22 오후 6:19:48 net6.0-windows.zip

+ There are no comments

Add yours

이 사이트는 Akismet을 사용하여 스팸을 줄입니다. 댓글 데이터가 어떻게 처리되는지 알아보세요.