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


ls命令用于列出目录内容,结果可以按几个条件排序,例如按日期,按字母顺序排列的文件名,修改时间,访问时间,版本和文件大小。

在本文中,我将向您展示如何使用Linux中的ls命令按日期对文件进行排序。

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

1)列出具有上次修改日期/时间的文件目录

要列出文件并在顶部显示最后修改的文件,我们将使用-lt选项和ls命令。

[linuxidc@localhost www.linuxboy.net]$ 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

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

2)列出具有上次修改日期/时间的文件(最近在底部)

我们将使用-ltr选项和ls命令列出底部最近修改过的文件的特定目录的文件。

[linuxidc@localhost www.linuxboy.net]$ 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

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

如果你想按目录排序,然后根据日期使用

$ ls -Rltr

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

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 linuxboy.net.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

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

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

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

要么

尾部组合,它显示最近更新的文件在底部。

[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

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

感谢阅读本文,如果您发现任何其他选项有用,请在下面发表评论。

linuxboy的RSS地址:https://www.linuxboy.net/rssFeed.aspx

本文永久更新链接地址:https://www.linuxboy.net/Linux/2018-11/155229.htm

相关内容