Найти файлы, измененные сегодня, используя командную строку (bash)

10

Как мы все знаем, несмотря на то, что Finder называется «Finder», он практически бесполезен при поиске файлов.

В Mac OS X 10.6 (или любой другой версии), как я могу использовать командную строку (bash в Terminal) для поиска файлов, измененных сегодня?

Базилик Бурк
источник

Ответы:

17

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

Найти файлы, измененные за последние 24 часа

find / -mtime -1 -print

Найти файлы, модифицированные сегодня (вероятно, что вы хотите)

find / -newerct 'yesterday' -print

или, используя Spotlight

mdfind date:today

Это также можно сделать из графического интерфейса с помощью Spotlight.

  1. Откройте Spotlight (опция-командное пространство по умолчанию).
  2. Добавьте критерий для поиска, нажав знак «плюс» в правом верхнем углу окна Spotlight.
  3. Измените критерии на «Дата последнего изменения» на «сегодня».
п`одать
источник
5
Обратите внимание, что вам не нужно -printуказывать в конце, так как по findумолчанию это значение, и в большинстве случаев вы хотите заменить его /либо .на поиск вниз по текущему каталогу, либо ~на поиск в вашем домашнем каталоге, а не в верхней части дерева.
Тони Уильямс
Можно ли проверить изменения файлов за последние 5 минут или за последние 2 часа?
Ewoks
@Ewoks Да, по mtimeумолчанию используется дни, но если вы укажете единицы измерения, вы можете найти изменения за последние n секунд, минут, часов или недель, например: find . -mtime -5m-или- find . -mtime -2h
Scot
1
Просто, чтобы помочь другим: время - время создания, время - время доступа, время - изменение статуса файла (он же «дата добавления»), - время изменения
Мэтт Сефтон,