如何在 Linux 中根据修改日期和时间查找和排序文件

information technologylinux

在使用电脑时,我们习惯于在电脑中保存大量信息,例如文件、文件夹等。通常情况下,桌面看起来很乱,但当用户想要搜索特定日期或时间修改过的文件时,问题就出现了。Linux 中有一些简单的命令可以用来搜索修改过的文件。本文介绍"如何在 Linux 中根据修改日期和时间查找和排序文件"。

根据修改时间列出文件

list 命令显示文件、目录、修改或访问日期和时间、权限、大小、所有者、组等信息的列表。以下命令显示文件列表及其格式,并根据修改时间对文件进行排序,最新文件显示在最前面。

$ ls -lt

示例输出应如下所示–

total 322428
drwxr-xr-x 3 linux linux    4096 Mar 8 13:59 Downloads
drwxr-xr-x 6 linux linux    4096 Mar 3 14:34 Desktop
lrwxrwxrwx 1 linux linux    37 Feb 27 13:25 PlayOnLinux's virtual drives -> /home/linux/.PlayOnLinux//wineprefix/
-rw-r--r-- 1 root root    70706 Feb 23 14:52 Selection_007.png
-rw-r--r-- 1 root root    108159 Feb 23 14:49 root@linux: ~_005.png
-rw-r--r-- 1 root root    145629 Feb 23 14:47 Workspace 1_004.png
drwxr-xr-x 2 linux linux    4096 Feb 23 14:30 Pictures
-rw-rw-r-- 1 linux linux    87631 Feb 19 14:08 account.png
-rw-rw-r-- 1 linux linux    72172 Feb 19 14:07 network.png
-rw-rw-r-- 1 linux linux    98362 Feb 19 14:05 sample1.png
drwxr-xr-x 8 root root       4096 Feb 19 11:38 linux-dash
drwxr-xr-x 2 linux linux    4096 Feb 19 11:08 Documents
drwxr-xr-x 2 linux linux    4096 Feb 19 11:08 Music
drwxr-xr-x 2 linux linux    4096 Feb 19 11:08 Public
drwxr-xr-x 2 linux linux    4096 Feb 19 11:08 Templates
drwxr-xr-x 2 linux linux    4096 Feb 19 11:08 Videos
-rw-r--r-- 1 linux linux    8980 Feb 19 10:55 examples.desktop

根据上次访问时间列出文件

要根据上次访问时间获取所有文件列表,请使用以下命令:

$ ls -ltu

示例输出应如下所示 –

total 322428
drwxr-xr-x 3 linux linux    4096 Mar 8 14:00 Downloads
drwxr-xr-x 8 root root     4096 Mar 8 11:18 linux-dash
-rw-r--r-- 1 linux linux     8980 Mar 8 11:18 examples.desktop
-rw-r--r-- 1 root root      70706 Mar 8 11:18 Selection_007.png
-rw-r--r-- 1 root root     108159 Mar 8 11:18 root@linux: ~_005.png
-rw-r--r-- 1 root root     145629 Mar 8 11:18 Workspace 1_004.png
lrwxrwxrwx 1 linux linux       37 Mar 8 11:18 PlayOnLinux's virtual drives -> /home/linux/.PlayOnLinux//wineprefix/
drwxr-xr-x 2 linux linux    4096 Mar 8 11:18 Public
drwxr-xr-x 2 linux linux    4096 Mar 8 11:18 Documents
drwxr-xr-x 2 linux linux    4096 Mar 8 11:18 Music
drwxr-xr-x 2 linux linux    4096 Mar 8 11:18 Pictures
drwxr-xr-x 2 linux linux    4096 Mar 8 11:18 Videos
drwxr-xr-x 2 linux linux    4096 Mar 8 11:15 Templates
drwxr-xr-x 6 linux linux    4096 Mar 8 11:15 Desktop

基于上次修改时间的文件列表

要获取上次修改的文件,请使用以下命令 –

$ ls -ltc

示例输出应如下所示 –

total 322428
drwxr-xr-x 3    linux linux 4096 Mar 8 13:59 Downloads
drwxr-xr-x 6    linux linux 4096 Mar 3 14:34 Desktop
lrwxrwxrwx 1    linux linux 37 Feb 27 13:25 PlayOnLinux's virtual drives -> /home/linux/.PlayOnLinux//wineprefix/
-rw-r--r-- 1   root root 70706 Feb 23 14:52 Selection_007.png
-rw-r--r-- 1    root root 108159 Feb 23 14:49 root@linux: ~_005.png
-rw-r--r-- 1    root root 145629 Feb 23 14:47 Workspace 1_004.png
drwxr-xr-x 2    linux linux 4096 Feb 23 14:30 Pictures
-rw-rw-r-- 1    linux linux 87631 Feb 19 14:08 account.png
-rw-rw-r-- 1    linux linux 72172 Feb 19 14:07 network.png
-rw-rw-r-- 1    linux linux 98362 Feb 19 14:05 sample1.png
drwxr-xr-x 8    root root 4096 Feb 19 11:38 linux-dash
drwxr-xr-x 2    linux linux 4096 Feb 19 11:08 Documents
drwxr-xr-x 2    linux linux 4096 Feb 19 11:08 Music
drwxr-xr-x 2    linux linux 4096 Feb 19 11:08 Public
drwxr-xr-x 2    linux linux 4096 Feb 19 11:08 Templates
drwxr-xr-x 2    linux linux 4096 Feb 19 11:08 Videos
-rw-r--r-- 1    linux linux 8980 Feb 19 10:55 examples.desktop

根据日期对 ls -l 的输出进行排序

此命令根据月份的第 1 个字段对 ‘ls -l’ 命令的输出进行排序。

使用以下命令 –

ls -l | sort -k1M

示例输出应如下所示 –

drwxr-xr-x 9 tutorialspoint 2000 4096 Feb 23 10:37 psensor-1.1.3
-rw-r--r-- 1    root root 108159 Feb 23 14:49 root@linux: ~_005.png
-rw-r--r-- 1    root root 124850 Feb 23 14:52 root@linux: ~_006.png
-rw-r--r-- 1    root root 145629 Feb 23 14:46 Workspace 1_004.png
-rw-r--r-- 1    root root 145658 Feb 23 14:43 Workspace 1_003.png
-rw-r--r-- 1    root root 146010 Feb 23 14:39 Workspace 1_002.png
-rw-r--r-- 1    root root 178005 Feb 23 14:39 Workspace 1_001.png
-rw-r--r-- 1    root root 200505 Aug 29 2015 Tutorialspoint ad-DADCpj8sFCE.mp3
-rw-r--r-- 1    root root 215 Mar 3 10:28 dead.letter
................

如需更深入的排序,请使用以下命令:

Find 命令

Find 命令用于根据用户指定的条件搜索并定位文件和目录列表。

按月份排序文件

如需按月份查找排序后的根文件,请使用以下命令:

# find / -type f -printf "
%Ab %p" | head -n 11

上述命令给出了按月份访问次数最多的前 11 个条目的完整列表。

May /etc/newt/palette.ubuntu
May /etc/newt/palette.original
May /etc/ltrace.conf
Mar /etc/pulse/daemon.conf
Mar /etc/pulse/default.pa
Jan /etc/pulse/system.pa
Mar /etc/pulse/client.conf
Mar /etc/gtk-3.0/settings.ini
Jul /etc/gtk-3.0/im-multipress.conf
Feb /etc/subgid-

要使用第一个带月份的键查找已排序的根文件,请使用 -k1M 选项,如下所示 –

# find / -type f -printf "
%Ab %p" | head -n 11 | sort -k1M

示例输出应如下所示 –

Jan /etc/pulse/system.pa
Feb /etc/subgid-
Mar /etc/gtk-3.0/settings.ini
Mar /etc/pulse/client.conf
Mar /etc/pulse/daemon.conf
Mar /etc/pulse/default.pa
May /etc/ltrace.conf
May /etc/newt/palette.original
May /etc/newt/palette.ubuntu
Jul /etc/gtk-3.0/im-multipress.conf

上述命令已按月份排序。

按日期排序文件

要根据日期查找排序后的根文件,请使用以下命令 –

# find / -type f -printf "
%AD %AT %p" | head -n 11

上述命令根据日期给出的结果如下所示 –

05/14/13 22:26:41.0000000000 /etc/newt/palette.ubuntu
05/14/13 22:26:41.0000000000 /etc/newt/palette.original
05/10/14 05:20:35.0000000000 /etc/ltrace.conf
03/08/16 11:14:01.9113136790 /etc/pulse/daemon.conf
03/08/16 11:14:01.9193136790 /etc/pulse/default.pa
01/29/15 04:17:39.0000000000 /etc/pulse/system.pa
03/08/16 11:14:01.3433136590 /etc/pulse/client.conf
03/08/16 11:14:00.0873136140 /etc/gtk-3.0/settings.ini
07/01/15 08:44:19.0000000000 /etc/gtk-3.0/im-multipress.conf
02/22/16 10:49:09.0000000000 /etc/subgid-

根据时间排序文件

要根据时间查找排序后的根文件,请使用以下命令 –

# find / -type f -printf "
%AT %p" | head -n 11

示例输出应如下所示 –

22:26:41.0000000000 /etc/newt/palette.ubuntu
22:26:41.0000000000 /etc/newt/palette.original
05:20:35.0000000000 /etc/ltrace.conf
11:14:01.9113136790 /etc/pulse/daemon.conf
11:14:01.9193136790 /etc/pulse/default.pa
04:17:39.0000000000 /etc/pulse/system.pa
11:14:01.3433136590 /etc/pulse/client.conf
11:14:00.0873136140 /etc/gtk-3.0/settings.ini
08:44:19.0000000000 /etc/gtk-3.0/im-multipress.conf
10:49:09.0000000000 /etc/subgid-

恭喜!现在,您已经了解了"如何在 Linux 中根据修改日期和时间查找和排序文件"。我们将在下一篇 Linux 文章中进一步学习这些类型的命令。继续阅读!


相关文章


有用资源