Команда поиска с -exec ls дает другой результат

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

В окне терминала я запускаю эту команду:

find Program.8.koeb/ -mtime -10

Что правильно создает список файлов, измененных за последние 10 дней. Однако, если я хочу запросить этот список, чтобы убедиться, что файлы, к которым я хочу прикоснуться, с помощью команды find , я бы выполнил эту команду:

find Program.8.koebe/ -mtime -10 -exec ls -gotrhR {} \;

Что дает длинный список всех файлов в каталогах мой текущий рабочий каталог, включая подкаталоги, вместе с указанным каталогом find назначен для поиска. Итак, -exec ls -gotrhR {} \; , похоже, дает тот же результат, что и:

find . -mtime -10 -exec ls -gotrhR {} \;

Что не является моим намерением.

0
26.02.2016, 00:00
1 ответ

Просто добавьте ' -type f', потому что -exec ls -l {} будет включать эти каталоги и перечислять их тоже.

2
28.01.2020, 02:35

Теги

Похожие вопросы