2012-03-12 3 views
44

이름에 날짜가있는 파일을 생성합니다. (* 아래 날짜는 와일드 카드입니다.) 마지막 파일을 잡고 싶습니다. 파일이 들어있는 폴더의 제목에도 날짜 (월 전용)가 있습니다.Powershell Get-ChildItem 디렉토리의 가장 최근 파일

저는 PowerShell을 사용하고 있으며 매일 실행되도록 예약하고 있습니다. 당신이 디렉토리에있는 최신 파일을 원하는 최신 파일을 결정하는 데에만 LastWriteTime를 사용하는 경우

$LastFile = *_DailyFile 
    $compareDate = (Get-Date).AddDays(-1) 
    $LastFileCaptured = Get-ChildItem -Recurse | Where-Object {$LastFile.LastWriteTime   
     -ge $compareDate} 

답변

104

, 당신은 다음과 같은 것을 수행 할 수 있습니다 :

gci path | sort LastWriteTime | select -last 1 

여기에 지금까지 스크립트입니다 당신은 단지 그들에 날짜가 이름에 의존 할 경우 디의 디렉토리가있는 경우 반면에, 당신은,

gci path | select -last 1 

또한 비슷한 할 수 있어야한다 목사관, 당신은을 추가 할 수도 있습니다 ?{-not $_.PsIsContainer}

+0

나는 첫 번째 예제를 사용하고 완벽하게 작동합니다. – user977645

+0

@ user977645 upvote/downvote 화살표 아래에있는 왼쪽의 v 기호를 클릭하면 답을 받아 들일 수 있습니다. –

+0

"LastAccessTime"이 작동한다는 소문이 인터넷에 있습니다. 그것은 거짓말이다. 귀하의 솔루션이 올바른 것입니다. – Ben