Сортировка файлов linux по времени

Содержание
  1. Как найти и отсортировать файлы по дате и времени модификации в Linux
  2. Утилиты Linux для сортировки файлов в Linux
  3. Некоторые способы сортировки файлов по дате и времени
  4. Заключение
  5. Вывод списка файлов с сортировкой
  6. Вывод директорий над файлами
  7. Как сортировать файлы по дате с помощью команды LS в Linux
  8. 1) Каталог файлов c последней измененной датой / временем
  9. 2) Список файлов с последней измененной датой / временем (последнее внизу)
  10. 3) Отображение в удобном формате
  11. 4) Найти файлы, измененные за последние 10 минут
  12. 5) Недавно измененные 10 файлов
  13. Как мне сделать ls, а затем отсортировать результаты по дате создания?
  14. Команда ls
  15. Описание команды ls
  16. Синтаксис
  17. Опции
  18. Примеры использования команды ls
  19. Подробный список файлов
  20. Показать скрытые файлы
  21. Понятный размер файлов
  22. Обозначить директории
  23. Список файлов в одну колонку
  24. Вывести только файлы с определенным расширением
  25. Файлы, начинающиеся на определенную букву
  26. Список файлов с сортировкой по времени
  27. Сортировка по размеру
  28. Список файлов, включая вложенные директории

Как найти и отсортировать файлы по дате и времени модификации в Linux

Обычно у нас есть привычка сохранять много информации в виде файлов в нашей системе. Некоторые, скрытые файлы, некоторые хранятся в отдельной папке, созданной для простоты понимания, а некоторые как есть. Но все это заполняет наши каталоги; обычно настольный, что делает его похожим на беспорядок. Но проблема возникает, когда нам нужно найти конкретный файл, измененный в определенную дату и время в этой огромной коллекции.

Люди, знакомые с графическим интерфейсом пользователя, могут найти его с помощью диспетчера файлов, который перечисляет файлы в формате длинного списка, что позволяет легко понять, что мы хотели, но те пользователи, у которых есть привычка к черным экранам, или даже любой, кто работает на серверах, которые лишены графического интерфейса, будут нужна простая команда или набор команд, которые могли бы облегчить их поиск.

Настоящая красота Linux проявляется здесь, поскольку в Linux есть набор команд, которые при использовании по отдельности или вместе могут помочь в поиске файла или сортировке коллекции файлов по их имени, дате модификации, времени создания или даже любому другому. фильтр, который вы могли бы подумать о применении, чтобы получить свой результат.

Здесь мы раскроем реальную силу Linux, изучив набор команд, которые могут помочь отсортировать файл или даже список файлов по дате и времени.

Утилиты Linux для сортировки файлов в Linux

Вот некоторые базовые утилиты командной строки Linux, которых достаточно для сортировки каталога по дате и времени:

ls — перечисление содержимого каталога, эта утилита может отображать файлы и каталоги и даже может отображать всю информацию о их статусе, включая дату и время изменения или доступа, разрешения, размер, владельца, группу и т. д.

Мы уже рассмотрели множество статей о команде Linux ls и команде sort, вы можете найти их ниже:

  1. Изучите команду ls на 15 основных примерах
  2. Изучите 7 команд Advanced ls с примерами
  3. 15 полезных вопросов для собеседования по команде ls в Linux

sort — эту команду можно использовать для сортировки результатов любого поиска по любому полю или любому конкретному столбцу поля.

Мы уже рассмотрели две статьи о команде сортировки Linux, вы можете найти их ниже:

  1. 14 примеров команд «sort» в Linux — часть 1
  2. 7 полезных примеров команд Linux «sort» — часть 2

Эти команды сами по себе являются очень мощными командами, которые нужно освоить, если вы работаете на черных экранах и имеете дело с большим количеством файлов, просто чтобы получить тот, который вам нужен.

Некоторые способы сортировки файлов по дате и времени

Ниже приведен список команд для сортировки по дате и времени.

Читайте также:  Что делать если при обновлении windows выдает ошибку

Приведенная ниже команда перечисляет файлы в формате длинного списка и сортирует файлы по времени модификации, начиная с самых новых. Для сортировки в обратном порядке используйте переключатель -r с этой командой.

Список файлов в каталоге на основе времени последнего доступа, т.е. на основе времени последнего доступа к файлу, а не изменения.

Список файлов в каталоге на основе времени последнего изменения информации о статусе файла или ctime . Эта команда сначала перечислит тот файл, любая информация о статусе которого, такая как: владелец, группа, разрешения, размер и т. Д., Была недавно изменена.

Если переключатель -a используется с вышеуказанными командами, они могут перечислять и сортировать даже скрытые файлы в текущем каталоге, а переключатель -r выводит вывод в обратном порядке.

Однако для более глубокой сортировки, такой как сортировка в выводе команды find, также можно использовать ls , но там sort оказывается более полезным, поскольку вывод может содержать не только файл имя, но любые поля по желанию пользователя.

Команды ниже показывают использование sort с командой find для сортировки списка файлов по дате и времени.

Чтобы узнать больше о команде find, перейдите по этой ссылке: 35 практических примеров команды find в Linux

Здесь мы используем команду find , чтобы найти все файлы в корневом каталоге (‘/’) , а затем распечатать результат как: месяц, в котором был осуществлен доступ к файлу, а затем имя файла. Из этого полного результата мы перечисляем 11 лучших записей.

Приведенная ниже команда сортирует вывод с использованием ключа в качестве первого поля, указанного в -k1 , а затем сортирует по месяцу, указанному перед ним M .

Здесь мы снова используем команду find , чтобы найти все файлы в корневом каталоге, но теперь мы распечатаем результат в виде: последней даты доступа к файлу, последнего доступа к файлу и затем имени файла. Из этого мы выберем 11 лучших записей.

Приведенная ниже команда сортировки сначала выполняет сортировку на основе последней цифры года, затем сортировку на основе последней цифры месяца в обратном порядке и, наконец, сортировку на основе первого поля. Здесь «1.8» означает 8-й столбец первого поля, а «n» перед ним означает числовую сортировку, а «r» указывает сортировку в обратном порядке.

Здесь мы снова используем команду find , чтобы вывести список из 11 файлов в корневом каталоге и распечатать результат в формате: время последнего обращения к файлу и затем имя файла.

Приведенная ниже команда сортирует вывод на основе первого столбца первого поля вывода, который является первой цифрой часа.

Эта команда сортирует вывод команды ls -l на основе 6-го поля по месяцам, а затем на основе 7-го поля, которое является датой, численно.

Заключение

Точно так же, обладая некоторыми знаниями о команде сортировки, вы можете отсортировать практически любой список на основе любого поля и даже любого столбца, который вам нужен. Это были некоторые приемы, которые помогут вам сортировать файлы по дате или времени. На их основе вы можете создавать свои собственные трюки. Однако, если у вас есть другой интересный трюк, вы всегда можете упомянуть об этом в своих комментариях.

Источник

Вывод списка файлов с сортировкой

Поделюсь удобными параметрами команды ls для сортировки списка файлов. Команда ls предназначена для вывода списка файлов и директорий, но по умолчанию она сортирует список по имени.

Для того, чтобы отсортировать список файлов используются следующие опции:

Опции команды ls для сортировки файлов.

Опция Эквивалентная
опция
Описание
-U —sort=none без сортировки
-X —sort=extension сортировка по расширению файла
-S —sort=size сортировка по размеру
-t —sort=time сортировка по времени изменения
-v выполнять сортировку по версиям файлов
-r выполнять сортировку в обратном порядке
Читайте также:  Sftp сервер для windows server 2016

Например, мы хотим отсортировать список по размеру файлов, тогда выполняем команду:

Это эквивалентно следующей команде:

Аналогично, например, если мы хотим получить список, отсортированный по расширению файлов:

Вывод директорий над файлами

Обычно команда ls выводит директории вперемешку с файлами. Некоторые реализации команды ls поддерживают полезную опцию: —group-directories-first. Если данная опция указана, то все директории будут выводится над списком файлов, что очень удобно.

Дополнительную информацию по команде ls вы можете получить, выполнив в терминале: man ls.

Источник

Как сортировать файлы по дате с помощью команды LS в Linux

Команда ls используется для отображения содержимого каталога, и результаты могут быть отсортированы по нескольким критериям, например по дате, алфавитному порядку имен файлов, времени модификации, времени доступа, версии и размера файла.

В этой статье я покажу вам, как сортировать файлы по дате с помощью команды ls в Linux.

1) Каталог файлов c последней измененной датой / временем

Чтобы просмотреть файлы и отобразить последние измененные файлы сверху, мы будем использовать опции -lt с командой ls.

2) Список файлов с последней измененной датой / временем (последнее внизу)

Мы будем использовать опции -ltr с командой ls для отображения файлов определенного каталога с недавно измененными файлами внизу.

Если вы хотите отсортировать по каталогу, по датам используйте

3) Отображение в удобном формате

Мы будем использовать опции -halt с помощью команды ls для отображения файлов определенного каталога в форматах для чтения

Он использует суффиксы K, M, G и T (или без суффикса для байтов)

4) Найти файлы, измененные за последние 10 минут

Мы можем получить файлы, измененные за последние 10 минут командой ниже:

5) Недавно измененные 10 файлов

Посмотрите, как проверить недавно измененные 10 файлов в каталоге с помощью команд ls.

Мы будем использовать комбинацию команд «ls» и «head».

Ниже команда покажет измененные 10 файлов с недавно обновленным файлом вверху

с комбинацией tail, он показывает недавно обновленный файл внизу.

Спасибо, что прочитали эту статью и, пожалуйста, прокомментируйте ниже, если вы найдете какие-либо другие варианты полезными.

Источник

Как мне сделать ls, а затем отсортировать результаты по дате создания?

В каком порядке упорядочены датированные? Конечно, не буквенно-цифровой порядок.

ls -lt сортирует по времени модификации. Но мне нужно время создания.

В большинстве офисов нет концепции времени создания файла. Вы не можете ls распечатать его, потому что информация не записана. Если вам нужно время создания, используйте систему контроля версий : определите время создания как время регистрации.

Если у вашего варианта Unix есть время создания, посмотрите его документацию. Например, в Mac OS X (единственный известный мне пример), используйте ls -tU . Windows также хранит время создания, но не всегда подвержено воздействию портов утилит unix, например, Cygwin ls не имеет возможности показать это. stat Утилита может показать время создания, называемое «время рождения» в GNU утилиты, так что под Cygwin вы можете показать файлы , отсортированные по времени рождения с stat -c ‘%W %n’ * | sort -k1n .

Обратите внимание, что ctime ( ls -lc ) — это не время создания файла , а время изменения инода . Время изменения inode обновляется всякий раз, когда изменяется что-либо в файле (содержимое или метаданные), за исключением того, что ctime не обновляется, когда файл просто читается (даже если atime обновляется). В частности, ctime всегда более свежее, чем mtime (время изменения содержимого файла), если только mtime не было явно установлено на дату в будущем.

Читайте также:  App defaults windows 10

К сожалению, stat(2) API не обеспечивает способ получения времени создания файла, так как это не требуется стандартами Unix.

Однако некоторые файловые системы ext4 сохраняют эту информацию в метаданных файла. Просто не существует стандартного способа получить его, но есть способ ( ext только для файловых систем):

Вы бы получили что-то подобное упоминание crtime ( не ctime !), Если вы используете ext4 .

Эта команда может занять некоторое время, вероятно, потому что она также перечисляет все экстенты, связанные с файлом.

Теперь, если вы хотите упорядочить файлы по дате создания, я думаю, это не легко (и не правильно) возможно. Как говорит Жиль , было бы проще, если бы вы использовали систему контроля версий. Но вы можете попытаться взглянуть на ext4 API .

Я попытался выполнить stat -c ‘%w’ myfile команду на ext4 файловой системе в (достаточно недавней) системе Ubuntu, но безуспешно (она просто отвечает — ).

Источник

Команда ls

Описание команды ls

Синтаксис

директория — задает директорию, содержимое которой нужно вывести. Если вместо директории указать файл, то будет выведена информация о данном файле.

Если директория не указана, то выводится содержимое текущей директории.

Опции

  • K — килобайты.
  • M — мегабайты.
  • G — гигабайты.

SIZE может принимать значения K, M, G, T, P, E, Z, Y (используется множитель 1024) или KB, MB, GB. (используется множитель 1000).

(такие файлы обычно создаются текстовыми редакторами в качестве резервной копии исходного файла).

  • auto — автоматически.
  • always — всегда.
  • never — не раскрашивать.
  • / — директория
  • * — исполняемый файл.
  • @ — символическая ссылка.
  • = — сокет.
  • > — door.
  • | — именованная очередь FIFO (pipe).
  • -x (across)
  • -m (commas) — через запятую.
  • -x (horizontal)
  • -l (long) — подробная информация о файлах.
  • -1 (single-column) — в одну колонку.
  • -l (verbose)
  • -C (vertical)
  • none ( -U )
  • size ( -S )
  • time ( -t )
  • version ( -v )
  • extension ( -X )
  • atime, access или use ( -u )
  • ctime или status ( -c )

Если указана опция —sort=time , то выполняется сортировка по соответствующему времени (новые файлы располагаются сверху).

Примеры использования команды ls

Рассмотрим несколько примеров использования команды ls.

Подробный список файлов

Выведем содержимое текущей директории, в которой мы в данной момент находимся. Используем опцию -l , чтобы выводить подробную информацию о файлах.

Если необходимо вывести содержимое другой директории, то нужно указать путь до директории, например:

Показать скрытые файлы

По умолчанию команда ls не показывает скрытые файлы. Что их показать, используется опция -a :

Понятный размер файлов

Вывести размер файлов в понятном формате (опция -h ):

Обозначить директории

У команды ls есть очень полезная опция -F , про которую не все знают. Она добавляет к именам файлов дополнительные обозначения, по которым сразу понятно что это за файл. Например, для директорий она добавляет символ /, и в списке файлов сразу видно где директории а где обычные файлы.

Список файлов в одну колонку

Вывести список в одну колонку:

Вывести только файлы с определенным расширением

Выведем файлы только с расширением .txt :

Выведем файлы с определенными расширениями ( .html , .php и .txt ):

Файлы, начинающиеся на определенную букву

Показать только файлы, имена которых начинаются на одну из букв указанного множества (a, d, u и x):

Список файлов с сортировкой по времени

Выведем список файлов с сортировкой по времени последнего изменения файла. Более свежие файлы располагаются сверху.

Сортировка по времени, но в обратном порядке:

Сортировка по размеру

Отсортируем файлы по размеру. Большие файлы располагаются первыми.

Список файлов, включая вложенные директории

Выведем список файлов, включая все файлы внутри вложенных директорий (рекурсивный обход всех директорий):

Источник

Оцените статью