Команда ls используется для отображения содержимого каталога, и результаты могут быть отсортированы по нескольким критериям, например по дате, алфавитному порядку имен файлов, времени модификации, времени доступа, версии и размера файла.
В этой статье я покажу вам, как сортировать файлы по дате с помощью команды ls в Linux.
1) Каталог файлов c последней измененной датой / временем
Чтобы просмотреть файлы и отобразить последние измененные файлы сверху, мы будем использовать опции -lt с командой ls.
$ ls -lt /run
output total 24 -rw-rw-r--. 1 root utmp 2304 Sep 8 14:58 utmp -rw-r--r--. 1 root root 4 Sep 8 12:41 dhclient-eth0.pid drwxr-xr-x. 4 root root 100 Sep 8 03:31 lock drwxr-xr-x. 3 root root 60 Sep 7 23:11 user drwxr-xr-x. 7 root root 160 Aug 26 14:59 udev drwxr-xr-x. 2 root root 60 Aug 21 13:18 tuned
2) Список файлов с последней измененной датой / временем (последнее внизу)
Мы будем использовать опции -ltr с командой ls для отображения файлов определенного каталога с недавно измененными файлами внизу.
$ ls -ltr /run
$ ls -ltr /run total 13404 drwxr-xr-x 2 root root 4096 Dec 14 2016 scripts -rwxr-xr-x 1 root root 4688 Dec 14 2016 perms.py -rw-r--r-- 1 root root 9718 Jun 23 14:47 ddagent-install.log -rw-r--r-- 1 root root 1457471 Jun 26 01:26 rocket.zip drwxr-xr-x 2 root root 4096 Jun 26 10:40 ssl-21APR2018-11JUN2020 drwxr-xr-x 6 root root 4096 Jun 27 09:29 incubator-pagespeed-ngx-latest-stable drwxr-xr-x 9 root root 4096 Jun 27 09:29 nginx-1.15.0 drwxr-xr-x 3 root root 4096 Jul 2 19:55 rocket-nginx -rw-r--r-- 1 root root 18186 Jul 11 13:17 memcachy.zip -rwxr-xr-x 1 root root 12202195 Sep 4 12:21 Linux_64bit.install :~#
Если вы хотите отсортировать по каталогу, по датам используйте
$ ls -Rltr
3) Отображение в удобном формате
Мы будем использовать опции -halt с помощью команды ls для отображения файлов определенного каталога в форматах для чтения
Он использует суффиксы K, M, G и T (или без суффикса для байтов)
$ ls -halt /run
total 28K -rw-rw-r--. 1 root utmp 1.9K Oct 28 06:02 utmp drwxr-xr-x. 3 root root 60 Oct 28 06:02 user drwxr-xr-x. 4 root root 100 Oct 28 03:48 lock -rw-r--r--. 1 root root 4 Oct 28 02:50 dhclient-eth0.pid drwxr-xr-x. 7 root root 160 Oct 25 12:16 udev drwxr-xr-x. 21 root root 600 Oct 25 12:15 .
4) Найти файлы, измененные за последние 10 минут
Мы можем получить файлы, измененные за последние 10 минут командой ниже:
$ find . -mmin -10 -type f -exec ls -l {} +
-rw-r--r--. 1 root root 53 Nov 1 01:58 ./smart.txt -rw-r--r--. 1 root root 15 Nov 1 02:00 ./test/file1
5) Недавно измененные 10 файлов
Посмотрите, как проверить недавно измененные 10 файлов в каталоге с помощью команд ls.
Мы будем использовать комбинацию команд «ls» и «head».
Ниже команда покажет измененные 10 файлов с недавно обновленным файлом вверху
$ ls -lt /run/ | head -10
-rw-rw-r--. 1 root utmp 1920 Oct 31 01:57 utmp drwxr-xr-x. 3 root root 60 Oct 31 01:57 user drwxr-xr-x. 16 root root 400 Oct 30 23:06 systemd -rw-r--r--. 1 root root 4 Oct 30 18:42 dhclient-eth0.pid drwxr-xr-x. 4 root root 100 Oct 30 03:06 lock drwxr-xr-x. 7 root root 160 Oct 28 06:09 udev -rw-------. 1 root root 3 Oct 25 12:15 syslogd.pid drwxr-xr-x. 2 root root 60 Oct 25 12:15 tuned -rw-r--r--. 1 root root 4 Oct 25 12:15 sshd.pid
или
с комбинацией tail, он показывает недавно обновленный файл внизу.
$ ls -ltr /run/ | tail -10
drwxr-xr-x. 3 root root 100 Oct 25 12:15 NetworkManager -rw-r--r--. 1 root root 4 Oct 25 12:15 sshd.pid drwxr-xr-x. 2 root root 60 Oct 25 12:15 tuned -rw-------. 1 root root 3 Oct 25 12:15 syslogd.pid drwxr-xr-x. 7 root root 160 Oct 28 06:09 udev drwxr-xr-x. 4 root root 100 Oct 30 03:06 lock -rw-r--r--. 1 root root 4 Oct 30 18:42 dhclient-eth0.pid drwxr-xr-x. 16 root root 400 Oct 30 23:06 systemd drwxr-xr-x. 3 root root 60 Oct 31 01:57 user -rw-rw-r--. 1 root utmp 1920 Oct 31 01:57 utmp
Спасибо, что прочитали эту статью и, пожалуйста, прокомментируйте ниже, если вы найдете какие-либо другие варианты полезными.