在Linux系统中如何使用ls命令按日期对文件进行排序


    ls命令用于列出目录内容,结果可以按几个条件排序,例如按日期,按字母顺序排列的文件名,修改时间,访问时间,版本和文件大小。
    在本文中,我将向您展示如何使用Linux中的ls命令按日期对文件进行排序。
    
    1)列出具有上次修改日期/时间的文件目录
    要列出文件并在顶部显示最后修改的文件,我们将使用-lt选项和ls命令。
    
[linuxidc@localhost www.linuxidc.com]$ ls -lt /run

    输出如下:
    总用量 60
    
-rw-rw-r--. 1 root     utmp     1536 11月 7 08:09 utmp
drwxr-xr-x. 7 root     root      160 11月 7 08:09 udev
drwxr-xr-x. 3 root     root      60 11月 7 08:05 user
drwxr-xr-x. 2 root     root      80 11月 7 08:04 mount
drwx------. 2 root     root      60 11月 7 08:04 udisks2
drwxr-xr-x. 3 root     root      60 11月 7 08:04 media
drwx--x--x. 4 root     gdm      100 11月 7 08:04 gdm
drwxr-xr-x. 2 root     root      80 11月 7 08:04 console
drwxr-xr-x. 2 root     root      40 11月 7 08:04 plymouth
drwxr-xr-x. 16 root     root      400 11月 7 08:04 systemd
drwxr-xr-x. 2 root     root      60 11月 7 08:04 tuned
----------. 1 root     root       0 11月 7 08:04 cron.reboot
drwxr-x---. 2 chrony    chrony     60 11月 7 08:04 chrony

    
    2)列出具有上次修改日期/时间的文件(最近在底部)
    我们将使用-ltr选项和ls命令列出底部最近修改过的文件的特定目录的文件。
    
[linuxidc@localhost www.linuxidc.com]$ ls -ltr /run

    总用量 60
    
drwxr-xr-x. 2 root     root      60 11月 7 08:04 tmpfiles.d
drwxr-xr-x. 4 root     root      120 11月 7 08:04 initramfs
drwx------. 2 root     root      80 11月 7 08:04 lvm
prw-------. 1 root     root       0 11月 7 08:04 dmeventd-server
prw-------. 1 root     root       0 11月 7 08:04 dmeventd-client
-rw-r--r--. 1 root     root       4 11月 7 08:04 lvmetad.pid
drwxr-xr-x. 2 root     root      40 11月 7 08:04 log
drwxr-xr-x. 2 root     root      60 11月 7 08:04 sysconfig
drwxr-xr-x. 2 root     root      40 11月 7 08:04 setrans
drwx------. 2 rpc      rpc       40 11月 7 08:04 rpcbind
drwxr-xr-x. 2 root     root      40 11月 7 08:04 faillock
drwx------. 2 root     root      40 11月 7 08:04 svnserve

    
    如果你想按目录排序,然后根据日期使用
    $ ls -Rltr
    
    3)以人类可读格式显示
    我们将使用-halt选项和ls命令以人类可读文件大小(长格式)列出特定目录的文件。 它使用K,M,G和T后缀(或字节没有后缀)
    
[linuxidc@localhost ~]$ ls -Rltr

    输出如下:
    .:
    总用量 4856
    
drwxr-xr-x. 2 linuxidc linuxidc   6 10月 17 18:44 音乐
drwxr-xr-x. 2 linuxidc linuxidc   6 10月 17 18:44 下载
drwxr-xr-x. 2 linuxidc linuxidc   6 10月 17 18:44 文档
drwxr-xr-x. 2 linuxidc linuxidc   6 10月 17 18:44 视频
drwxr-xr-x. 2 linuxidc linuxidc   6 10月 17 18:44 模板
drwxr-xr-x. 2 linuxidc linuxidc   6 10月 17 18:44 公共
-rw-------. 1 linuxidc linuxidc 5238784 10月 17 18:44 core.11901
-rw-rw-r--. 1 linuxidc linuxidc 32990 10月 21 19:24 linuxidc.com.mp4
drwxr-xr-x. 2 linuxidc linuxidc   49 10月 25 16:01 图片
lrwxrwxrwx. 1 linuxidc linuxidc   26 11月 3 16:57 linuxidc_movies -> /mnt/linuxidc_drive/movies

    4)查找最近10分钟内修改的文件
    我们可以使用以下命令在过去10分钟内修改文件:
    
[linuxidc@localhost ~]$ find . -mmin -10 -type f -exec ls -l {} +

    输出如下:
    
-rw-------. 1 linuxidc linuxidc  6054 11月 7 08:18 ./.bash_history
-rw-------. 1 linuxidc linuxidc   11 11月 7 08:20 ./.cache/abrt/lastnotification
-rw-------. 1 linuxidc linuxidc 39149 11月 7 08:14 ./.cache/thumbnails/large/56396444cd332797f52efb60e18f41d8.png

    
    5)最近修改了10个文件
    让我们看看如何使用ls命令检查目录中最近修改的10个文件。 我们将使用'ls'和'head'命令的组合。
    下面的命令将显示已修改的10个文件,其中最近更新的文件位于顶部
    
[linuxidc@localhost ~]$ ls -lt /run/ | head -10

    输出如下:
    总用量 60
    
-rw-rw-r--. 1 root     utmp     2304 11月 7 08:24 utmp
drwxr-xr-x. 3 root     root      60 11月 7 08:20 user
drwxr-xr-x. 7 root     root      160 11月 7 08:17 udev
drwxr-x---. 2 chrony    chrony     60 11月 7 08:15 chrony
-rw-r--r--. 1 root     root       5 11月 7 08:15 dhclient-ens33.pid
drwxr-xr-x. 3 root     root      100 11月 7 08:15 NetworkManager
drwxr-x---. 2 root     root      40 11月 7 08:15 firewalld
drwxr-xr-x. 2 root     root      80 11月 7 08:04 mount
drwx------. 2 root     root      60 11月 7 08:04 udisks2

    
    要么
    尾部组合,它显示最近更新的文件在底部。
    
[linuxidc@localhost ~]$ ls -ltr /run/ | tail -10

    输出如下:
    
drwxr-xr-x. 3 root     root      60 11月 7 08:04 media
drwx------. 2 root     root      60 11月 7 08:04 udisks2
drwxr-xr-x. 2 root     root      80 11月 7 08:04 mount
drwxr-x---. 2 root     root      40 11月 7 08:15 firewalld
drwxr-xr-x. 3 root     root      100 11月 7 08:15 NetworkManager
-rw-r--r--. 1 root     root       5 11月 7 08:15 dhclient-ens33.pid
drwxr-x---. 2 chrony    chrony     60 11月 7 08:15 chrony
drwxr-xr-x. 7 root     root      160 11月 7 08:17 udev
drwxr-xr-x. 3 root     root      60 11月 7 08:20 user
-rw-rw-r--. 1 root     utmp     2304 11月 7 08:24 utmp