최근에 업데이트된 파일을 확인하는 방법

최근에 업데이트된 파일을 확인하는 방법

iostat -x 1을 실행하면 가끔 5MB~10MB의 대규모 쓰기가 표시됩니다.

어떤 파일이 작성되고 있나요?

예를 들어, 최근 생성된 파일 크기가 5MB보다 큰지 확인하고 싶습니다.

어떻게 해야 하나요?

답변1

/path에서 X분 내에 수정된 파일 찾기

find /path -cmin -X

Sign before minute:
    + more than X minutes / over X minutes
    - less than X minutes / within X minutes
   (no sign) exact

예: 지난 30분 동안 수정된 /var/log(하위 디렉터리 포함)에서 모든 파일을 찾습니다.

find /var/log -cmin -30

/path에서 크기가 X인 파일 찾기

find /path -size +X<unit>

Sign before size:
    + larger than
    - less than
   (no sign) exact

<unit> :
    b = block (default,512byte)
    c = byte
    w = word (2-byte)
    k = kbyte
    M = Mbyte
    G = Gbyte

예: /var/log(하위 디렉터리 포함)에서 50k보다 큰 모든 파일 찾기

find /var/log -size +50k

결합하다

예: /var/log(하위 디렉터리 포함)에서 지난 30분 동안 수정된 50k보다 큰 모든 파일 찾기

find /var/log -cmin -30 -size +50k

네가 원한다면50,000개 포함결과에서 다음으로 변경하십시오.

find /var/log -cmin -30 -size +49k

폴리스티렌: find / .....시간이 오래 걸릴 뿐만 아니라 일반적으로 검색에 적합하지 않은 디렉터리(/dev, /sys, /proc, ...)도 포함되므로 이 작업을 피하세요.

답변2

find파일 시스템에서 파일을 적극적으로 검색하고 해당 타임스탬프를 신뢰해야 합니다 .

Linux 시스템의 최근 대안은 다음과 같습니다.inotify. 이 경우 커널은 파일 시스템의 변경 사항을 감시하며, inotifywait -m이를 통해 실시간으로 무슨 일이 일어나고 있는지 알 수 있습니다.

큰 디렉터리 트리를 반복적으로 모니터링할 때는 inotify 메서드가 제대로 작동하지 않습니다. 이 경우 find모니터링할 디렉터리를 알 수 있습니다.

관련 정보