디렉토리 및 모든 서브 디렉토리에 대해 최근에 변경된 파일 목록


13

리눅스에서는 모든 하위 디렉토리가있는 디렉토리에서 최신 수정 파일을 찾아 나열하는이 명령을 알고 있습니다.

find /var/www/ -type f -exec stat --format '%Y :%y %n' {} \; | sort -nr | cut -d: -f2- | head

Windows CLI에 해당하는 것이 있습니까?


수정 된 파일 만 찾고 있습니까? 아니면 모든 파일을보고 있습니까?
Keltari

1
나는 PowerShell에서이 작업을 수행 할 수 있습니다 확신 까지 배치보다 더 쉽게,하지만 당신은 절대적 경우 해야한다 후자를 사용하여 ... 시도 dir /a-d /o-d /tw /s(쇼 파일 만, 날짜 내림차순으로 순서가, 같이 Recurse 하위 디렉토리로, 정렬에 마지막으로 쓴 시간을 사용). 그러나 이것은 모든 파일을 나열합니다. n 개의 최신 수정 된 파일로만 목록을 제한하려면 여기에서 dbenham 의 훌륭한 솔루션을 사용 하십시오 .
Karan

Linux 명령에 대한 몇 가지 의견 : (1) 대신 -exec을 고려할 수도 있습니다 xargs. (2) 말한 것처럼 전체 디렉토리 (하위) 트리를 수정 날짜순으로 정렬 한 다음 최신 N을 보려면 원하는 것이 합리적입니다. 그러나 지난 N 일 동안 수정 된 모든 파일을 찾아 필요한 정보를 얻을 수있는 경우를 참조하십시오 find … -mtime ….
Scott

2
이전 의견에 추가하려면을 살펴보십시오 forfiles /s /d +<date>.
Karan

답변:


18

PowerShell 2.0

최근 10 개의 변경된 파일

Dir C:\folder -r | ? {! $_.PSIsContainer} | sort LastWriteTime | select -last 10

지정된 날짜 이후 변경된 파일

Dir C:\folder -r | ? {! $_.PSIsContainer -AND $_.lastwritetime -ge '04/18/14'} 

http://ss64.com/ps/에서 자세히 알아보십시오 .


수정 된 파일이있는 디렉토리 만 표시하려면이 작업을 수행하십시오. Dir d : \ sftp -r | ? {! $ _. PSIsContainer -AND $ _. lastwritetime -ge '05 / 25 / 2018 '} | findstr 디렉토리
Rob

0
dir c:\windows\ /aa /s /O-D

c : \ windows 폴더에 아카이브 속성 세트 (수정)가있는 모든 파일과 모든 하위 폴더를 날짜순으로 나열합니다 (가장 먼저)

편집 :이 방법은 특정 시점에서 아카이브 비트를 지우거나 목록이 커지고 커지는 경우에만 작동합니다.


1
Archive 속성은 최근에 변경된 파일과 어떤 관련이 있습니까?
Karan

1
모든 것 . 변경된 모든 파일은 OS에서 설정 한 아카이브 속성을 가져옵니다. 백업 프로그램이 파일이 변경되어 백업해야한다는 것을 알 수 있습니다.
Keltari

3
편집은 매우 중요합니다. + A가있는 파일은 이미 변경되지 않습니다. 수정 한 날짜를 기준으로이를 수행 할 수있는 방법을 찾으십시오.
Karan

0

MT Directory Changes Watcher를 살펴보십시오. 귀하의 필요에 맞을 수도 있습니다.

프로그램은 특정 디렉토리 (감시 디렉토리)에서 파일 변경을 감시 한 다음 변경된 디렉토리를 다른 폴더 (미러 디렉토리)에 복사하여 디렉토리 구조를 저장합니다. 원격 사이트의 로컬 사본이 있고 마지막 업로드 후 로컬로 변경된 파일 만 업로드하려는 경우 매우 유용합니다.

http://mito-team.com/projects/dcw

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.