在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