Относительно приравнивания атрибутов файла в команде «ls»

У меня есть папка, в которой есть тысячи изображений. Из этих тысяч изображений я хочу объединить все те образы, атрибуты «Последний созданный» и «Последний измененный» точно такие же. (Другими словами, я хочу отделить все изображения, которые я никогда не переименовал, например)

Есть ли способ сделать это с терминала?

это две команды, которые я хочу объединить в файл списков ls -tU по дате создания. (Я нахожусь на mac) ls -lt перечисляет файл по дате изменения

так что я хочу «Список файлов, дата создания которых была создана = дата изменена»,

2 Solutions collect form web for “Относительно приравнивания атрибутов файла в команде «ls»”

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

 #!/bin/sh find $* -exec stat -f '%m %B %N' {} \; | \ awk '$1 == $2 { \ s=length($1)+length($2)+3; $0 = substr($0,s); print $0; }' 

%m и %B являются соответственно измененными и время рождения (которые, как представляется, были заданы). Сценарий печатает их как десятичные числа, переходя к awk который затем печатает только строки, в которых эти числа одинаковы. Поскольку ваши имена файлов могут иметь встроенные пробелы, остальная часть сценария удаляет значения временной метки со входа и печатает оставшуюся часть строки.

Дальнейшее чтение:

  • Как использовать команду stat в OS X для отображения даты / времени создания файла или каталога?
  • stat / readlink – отображение состояния файла

Мне было скучно, и у меня есть возможность использовать такой скрипт, поэтому я изменил Томаса Дики совсем не так, а не так, как например, так, чтобы вы могли обращаться со всеми именами файлов (даже с новыми символами) и легко менять разделитель между именами файлов (например, просто установите ORS на "\0" чтобы переслать его на xargs -z … )

 #!/bin/sh find "${1-.}" -type f -exec stat --printf '%n\0%Y %W\0' -- {} \; | \ awk 'BEGIN { RS = "\0"; FS = " "; ORS = "\n"; } { if (NR % 2) { f = $0; } else if ($1 == $2) { print f; } }' 

Не полностью POSIX из-за, например, --printf .

  • информация о ходе работы через pv для копирования каталога
  • Почему curl -O -C на Mac не загружается
  • Получение ошибки RE: операнд-оператор повторения недействителен в osx sed
  • Получить файл .cer из файла .pem
  • «Mount» не указывает тип файловой системы
  • Удаление файлов-призраков с символами, отличными от ASCII
  • Как поделиться своим подключением к Интернету с малиной?
  • Как я могу узнать, где находится firefox bin?
  • Статистика пропускной способности Wi-Fi для каждой сети?
  • Нет руководства для git
  • Как скопировать пасту на удаленный сервер?
  • Interesting Posts

    Печать последнего элемента каждой строки

    Существует ли идентификатор PID для каждого сервиса tomcat? Если он существует, можно ли найти имя службы из этого PID текущей службы tomcat?

    ACL не всегда наследуется

    Использование sed для удаления строки или абзаца между разделителем

    Как создать псевдоним, но поэтому я могу ввести в другую информацию команду

    Запуск сценария при запуске и после переключения сети

    autofs не отключается после неактивного

    vim: как установить: match и: 2match результаты поиска для разных цветов?

    как настроить слабую полезную нагрузку

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

    Как отключить альфа меню приложения?

    awk – добавить столбец после сопоставления остальных столбцов

    Что происходит, когда вы проверяете отдельную подпись?

    Что такое pam_unix2 / почему он не существует в некоторых дистрибутивах?

    Какое живое распределение USB предлагает выборочную устойчивость?

    Linux и Unix - лучшая ОС в мире.