-path "/usr/local/connect/"
будет соответствовать только пути к файлу, который точно соответствует /usr/local/connect/
. Это никогда не совпадет, потому что с find .
, все пути будут начинаться с .
Итак, вы хотели бы:
find / -path '/usr/local/connect/*' -type d -prune -o \
-name '*.txt' -type f -mtime -1 -print
-print
также важен. Без него был бы неявный -print
для файлов, которые соответствуют всему выражению (то есть обе части -o
).
Обратите внимание, что вы также можете использовать -xdev
, чтобы предотвратить пересечение границ файловой системы.
Если вы хотите запустить его с помощью , найдите .
когда текущий каталог /usr/local
, это должно быть:
cd /usr/local &&
find . -path './connect/*' -type d -prune -o \
-name '*.txt' -type f -mtime -1 -print