find
Находит все файлы, соответствующие заданному выражению, и применяет к ним указанные действия.
Если путь не указан, то по умолчанию используется текущая рабочая директория.
Если выражение не указано, то по умолчанию используется -print
.
Принимаются следующие первичные выражения:
-
-name <pattern>;
-
-iname <pattern>.
Возвращает true
, если имя файла соответствует шаблону с использованием стандартной глобализации (globbing) файловой системы.
Если используется -iname
, то сравнение не чувствительно к регистру.
Выражения -print
и -print0
всегда возвращают true
и предназначены для вывода текущего пути в стандартный вывод.
Если используется выражение -print0
, то добавляется ASCII-символ NULL
.
Принимаются следующие операторы:
-
expression -a expression;
-
expression -and expression;
-
expression expression.
Логический оператор AND
используется для объединения двух выражений.
Возвращает true
, если оба дочерних выражения возвращают true
.
Используется при соединении двух выражений и поэтому не требует явного указания.
Второе выражение не будет применено, если первое не удалось вычислить.
Возвращает 0
при успешной попытке и -1
при ошибке.
Использование показано ниже:
$ hadoop fs -find <path> ... <expression> ...
Пример:
$ hadoop fs -find / -name test -print