특정 수정 날짜에 대한 가장 최근 파일 라이브러리를 찾고 최신 수정 날짜를 기준으로 목록 라이브러리를 정렬하고 싶다고 가정해 보겠습니다.
예를 들어
find /path/to/files -mtime -15 | xargs -d '\n' -r ls -t
산출:참고: 수정된 날짜를 표시하기 위해 파일 이름에 수정된 날짜만 입력하겠습니다.
/path/to/file_EEE_2018Apr01.dat
/path/to/file_DDD_2018Apr01.dat
/path/to/file_CCC_2018Apr01.dat
/path/to/file_AAA_2018Mar28.dat
/path/to/file_BBB_2018Mar26.dat
그런 다음 수정 날짜는 최신이지만 날짜는 같은 파일을 가져오고 싶습니다.
예를 들어 최종 출력은 다음과 같습니다.이는 첫 번째 출력 결과에서 가져온 것입니다.
/path/to/file_EEE_2018Apr01.dat
/path/to/file_DDD_2018Apr01.dat
/path/to/file_CCC_2018Apr01.dat
답변1
이렇게 하면 됩니다:
FIND_PATH='/path/to/files'; find "$FIND_PATH" -newermt $(find "$FIND_PATH" -printf '%TY-%Tm-%Td\n' | sort | tail -1)
"내부"는 find
모든 수정 날짜를 형식으로 인쇄 yyyy-mm-dd
하고 최신 날짜( | sort | tail -1
)만 인쇄합니다.
"외부"는 find
이 날짜의 파일만 찾습니다.