ls -lt
사전순으로 정렬하기 전에 수정 시간별로 파일을 정렬한다는 내용을 읽었습니다 .
그러나 이 구문과 함께 명령을 사용하면 다음과 같은 결과가 나타납니다.
ls -lt
total 192
-rw-r--r-- 1 elfryskai staff 6988 Aug 20 21:17 sorting_files.o
-rw-r--r-- 1 elfryskai staff 4416 Aug 20 20:56 sorting_dirs.o
-rw-r--r-- 1 elfryskai staff 6552 Aug 20 15:12 lists.o
-rw-r--r-- 1 elfryskai staff 7692 Aug 20 15:12 printing.o
-rw-r--r-- 1 elfryskai staff 7868 Aug 20 01:05 assets.o
-rw-r--r-- 1 elfryskai staff 5344 Aug 20 01:05 freeing.o
-rw-r--r-- 1 elfryskai staff 4860 Aug 20 01:05 reversing.o
-rw-r--r-- 1 elfryskai staff 8028 Aug 20 01:04 listing.o
-rw-r--r-- 1 elfryskai staff 2620 Aug 19 23:24 errors.o
-rw-r--r-- 1 elfryskai staff 3096 Aug 19 23:24 main.o
-rw-r--r-- 1 elfryskai staff 5564 Aug 19 21:07 chmod.o
-rw-r--r-- 1 elfryskai staff 7140 Aug 19 21:07 sorting.o
-rw-r--r-- 1 elfryskai staff 4760 Aug 19 21:07 parsing.o
parsing.o
은(는) 뒤에 옵니다 sorting.o
. 왜?
를 사용하면 ls -lT
이 두 개(더하기 chmod.o
)의 타임스탬프가 동일하다는 것을 알 수 있습니다.
ls -lT
total 192
[...]
-rw-r--r-- 1 elfryskai staff 5564 Aug 19 21:07:50 2018 chmod.o
[...]
-rw-r--r-- 1 elfryskai staff 4760 Aug 19 21:07:50 2018 parsing.o
[...]
-rw-r--r-- 1 elfryskai staff 7140 Aug 19 21:07:50 2018 sorting.o
[...]
편집: APFS 볼륨으로 MacOS를 실행하고 있습니다.
답변1
Apple의 최신 파일 시스템인 APFS는 초 단위가 아닌 나노초 단위로 타임스탬프를 저장합니다(HFS+가 그랬던 것처럼).
이는 파일이 동시에 수정된 것처럼 보이더라도 파일의 다른 정렬을 설명할 수 있습니다.
그것을 테스트하기 위해, 나의 엉성한 C를 용서해주세요:
#include <stdio.h>
#include <sys/stat.h>
int main() {
struct stat attr;
stat("/path/to/file", &attr);
printf("Last modified time: %ld", (long)&attr.st_mtime);
}
그 다음에:
gcc -o test.o test.c && test.o
인쇄할 내용:
Last modified time: 140734785103288