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

Я пытаюсь найти два расширения в командной строке, но когда я сделаю она только возвратит одно из расширений. можно ли сказать мне, что я пропускаю?

Вот моя команда;

[root]# find /etc -name "*.txt" -o -name "*.log" -type f -mtime +7 -exec echo {} \;
-1
задан 13 January 2015 в 17:07

1 ответ

Из-за пути, который find оценивает логические тесты, вероятно, необходимо сгруппироваться -name, тесты с помощью [вышли] из круглых скобок для получения желаемого поведения:

find /etc \( -name "*.txt" -o -name "*.log" \) -type f -mtime +7 -exec echo {} \;

я предполагаю, что Вы используете echo в качестве заполнителя для некоторого другого -exec действие, которое Вы хотите выполнить, иначе Вы могли просто использовать

find /etc \( -name "*.txt" -o -name "*.log" \) -type f -mtime +7 -print
0
ответ дан 3 August 2019 в 19:42

Другие вопросы по тегам:

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