Linux와 커맨드 라인 기초
GNU의 find로 'find /data -name "*.log" -mtime +7 -size +100M'을 실행했을 때 찾아지는 파일에 대한 설명으로 올바른 것은?
- A이름이 .log로 끝나고, 마지막 갱신이 8일 이상 전이며, 크기가 100 MiB를 넘는 파일
- B이름이 .log로 끝나고, 마지막 갱신이 7일 이내이며, 크기가 100 MiB를 넘는 파일
- C이름이 .log로 끝나고, 만들어진 것이 8일 이상 전이며, 크기가 100 MiB를 넘는 파일
정답과 해설 보기
정답: A. 이름이 .log로 끝나고, 마지막 갱신이 8일 이상 전이며, 크기가 100 MiB를 넘는 파일
-name "*.log"는 이름이 .log로 끝나는 것, -mtime은 내용을 마지막으로 갱신한 시각, -size +100M은 크기가 100 MiB를 넘는 것을 고릅니다. -mtime은 경과 시간을 24시간 단위로 세어 나머지를 버린 일수로 비교하므로, +7은 '7보다 크다', 즉 8일(192시간) 이상 지난 것이 되며, 7일 23시간밖에 지나지 않은 파일은 선택되지 않습니다. 7일 이내에 갱신한 것은 -mtime -7로 고릅니다. *.log를 따옴표로 감싸는 것은 셸(shell)이 먼저 현재 디렉터리의 파일 이름으로 확장해 버리지 않게 하기 위해서입니다.