не рекурсивно:
ls /usbDir/dir/myFile.txt
рекурсивно, но игнорируется .Trash
:
find /usbDir/dir -name .Trash -prune -o -name 'myFile.txt'
Объяснение: -o
в середине - ИЛИ оператор. Если я произнесу подразумеваемые части, вышесказанное эквивалентно:
find /usbDir/dir '(' -name .Trash -prune ')' -or '(' -name 'myFile.txt' -print ')'
-prune
говорит ему прекратить рекурсивный поиск при обнаружении записи .Trash
. Там обрезается дерево поиска.
-print
- это подразумеваемое действие с правой стороны -or
. Он печатает совпадающие имена файлов.
Круглые скобки являются необязательными, как правило, круглые скобки. Они должны быть заключены в кавычки, потому что в противном случае оболочка интерпретирует их вместо команды find
.