먼저 Linux 데스크탑에 폴더 2개를 만듭니다.
a
b
이제 터미널에서 실행해 보세요
ls -ltu
밝혀지다
drwxr-xr-x 2 root root 4096 Aug 30 20:33 b
drwxr-xr-x 2 root root 4096 Aug 30 20:33 a
a를 클릭하고 다시 실행해 보겠습니다.
위와 정확히 같은 결과입니다.
b를 클릭하고 다시 실행해 보겠습니다.
위와 정확히 같은 결과입니다.
마지막으로 클릭한 폴더를 기준으로 폴더를 정렬하려고 합니다. 그들은 그것을 추천했지만 ls -ltu
효과가 없었습니다.
답변1
이 명령을 사용하여 stat
파일 및 디렉터리에 대한 시간 관련 정보를 볼 수 있습니다.
예
$ mkdir a b
$ ll
total 8
drwxrwxr-x 2 saml saml 4096 Aug 31 00:08 a
drwxrwxr-x 2 saml saml 4096 Aug 31 00:08 b
$ ls -ltu
total 8
drwxrwxr-x 2 saml saml 4096 Aug 31 00:08 a
drwxrwxr-x 2 saml saml 4096 Aug 31 00:08 b
통계 출력
이제 다음 명령을 사용하여 이러한 디렉터리를 살펴보겠습니다 stat
.
$ stat a b
File: `a'
Size: 4096 Blocks: 8 IO Block: 4096 directory
Device: fd02h/64770d Inode: 5643285 Links: 2
Access: (0775/drwxrwxr-x) Uid: ( 500/ saml) Gid: ( 501/ saml)
Access: 2013-08-31 00:08:03.621936538 -0400
Modify: 2013-08-31 00:08:03.621936538 -0400
Change: 2013-08-31 00:08:03.621936538 -0400
File: `b'
Size: 4096 Blocks: 8 IO Block: 4096 directory
Device: fd02h/64770d Inode: 5643286 Links: 2
Access: (0775/drwxrwxr-x) Uid: ( 500/ saml) Gid: ( 501/ saml)
Access: 2013-08-31 00:08:03.621936538 -0400
Modify: 2013-08-31 00:08:03.621936538 -0400
Change: 2013-08-31 00:08:03.621936538 -0400
입장a
이제 디렉터리에 액세스해 보겠습니다 a
.
$ ls a
이제 디렉토리를 다시 확인해 보겠습니다 stat
.
$ stat a b
File: `a'
Size: 4096 Blocks: 8 IO Block: 4096 directory
Device: fd02h/64770d Inode: 5643285 Links: 2
Access: (0775/drwxrwxr-x) Uid: ( 500/ saml) Gid: ( 501/ saml)
Access: 2013-08-31 00:08:33.221267791 -0400
Modify: 2013-08-31 00:08:03.621936538 -0400
Change: 2013-08-31 00:08:03.621936538 -0400
File: `b'
Size: 4096 Blocks: 8 IO Block: 4096 directory
Device: fd02h/64770d Inode: 5643286 Links: 2
Access: (0775/drwxrwxr-x) Uid: ( 500/ saml) Gid: ( 501/ saml)
Access: 2013-08-31 00:08:03.621936538 -0400
Modify: 2013-08-31 00:08:03.621936538 -0400
Change: 2013-08-31 00:08:03.621936538 -0400
디렉토리 통계에 영향을 미쳤다는 것을 알 수 있습니다 ls a
.
앞으로
Access: 2013-08-31 00:08:03.621936538 -0400
뒤쪽에
Access: 2013-08-31 00:08:33.221267791 -0400
입장b
b
이제 디렉토리 에 액세스하면 다음과 같습니다 ls b
.
$ ls b
$ ls -ltu
total 8
drwxrwxr-x 2 saml saml 4096 Aug 31 00:17 b
drwxrwxr-x 2 saml saml 4096 Aug 31 00:08 a
통계 출력
ls -ltu
액세스 시간이 변경되었으며 위의 출력은 다음과 같아야 함을 확인할 수 있습니다 .
$ stat a b
File: `a'
Size: 4096 Blocks: 8 IO Block: 4096 directory
Device: fd02h/64770d Inode: 5643285 Links: 2
Access: (0775/drwxrwxr-x) Uid: ( 500/ saml) Gid: ( 501/ saml)
Access: 2013-08-31 00:08:33.221267791 -0400
Modify: 2013-08-31 00:08:03.621936538 -0400
Change: 2013-08-31 00:08:03.621936538 -0400
File: `b'
Size: 4096 Blocks: 8 IO Block: 4096 directory
Device: fd02h/64770d Inode: 5643286 Links: 2
Access: (0775/drwxrwxr-x) Uid: ( 500/ saml) Gid: ( 501/ saml)
Access: 2013-08-31 00:17:15.279776957 -0400
Modify: 2013-08-31 00:08:03.621936538 -0400
Change: 2013-08-31 00:08:03.621936538 -0400
ls b
액세스 시간 업데이트가 발생하는 간단한 상황을 다시 볼 수 있습니다 .
앞으로
Access: 2013-08-31 00:08:03.621936538 -0400
뒤쪽에
Access: 2013-08-31 00:17:15.279776957 -0400
일반화하다
위의 분석을 보면 ls -ltu
예상 접속 시간을 기준으로 정렬된 디렉터리를 보여주지 않을 이유가 없습니다.
그래서 무슨 일이야?
액세스 시간이 추적되지 않도록 디렉토리를 마운트했을 수도 있습니다. 이는 왜 변화가 없었는지 설명합니다.
mount 명령에 대한 매뉴얼 페이지를 보면 다음 두 가지 옵션이 정의되어 있는 것을 볼 수 있습니다.
atime Update inode access time for each access. See also the
strictatime mount option.
noatime Do not update inode access times on this filesystem (e.g,
for faster access on the news spool to speed up news servers).
이 명령을 사용하여 파일 시스템이 어떻게 마운트되었는지 확인할 수 있습니다 mount
. 장치 설치 후 noatime
이 옵션이 나타나면 장치 설치 후 접속 시간(atime)이 추적되지 않습니다. 이는 일반적으로 성능을 향상시키기 위해 수행됩니다.
예
$ mount
/dev/mapper/vg_grinchy-lv_root on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
tmpfs on /dev/shm type tmpfs (rw)
/dev/sda5 on /boot type ext4 (rw)
/dev/mapper/vg_grinchy-lv_home on /home type ext4 (rw)
gvfs-fuse-daemon on /home/saml/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev,user=saml)
답변2
이것이 바로 당신에게 필요한 것입니다:
ls -Aru | tail -n 1