find
будет включать все файлы и каталоги под путями, указанными в качестве параметров, и фильтровать их по правилам, заданным в качестве дополнительных параметров. Ты можешь использовать
find "$dir" -type f -name 'glob*' -size 0 -print
Некоторые реализации find
что в качестве первого параметра не требуется каталог (некоторые делают, как в Solaris), и по умолчанию используется текущий рабочий каталог (.
). В большинстве реализаций параметр -print
можно опустить, если он не указан, find
значения по умолчанию для печати соответствующих файлов.
"$dir"
заменяется оболочкой на значение переменной dir
(из вопроса)
-type f
ограничивает его файлами (без каталогов или символических ссылок)
-name 'glob*'
ограничивает его файлом, имя которого совпадает с glob*
(имена файлов начинаются с glob
). Чтобы включить все файлы, опустите это
-size 0
включает только файлы с размером 0 (одинаковые во всех единицах, для ненулевых значений, c
должен быть включен, чтобы проверить размер файла в байтах)
-print
- это действие, выполняемое с соответствующими файлами. -print
напечатает имена файлов. Это может быть опущено в стандартных реализациях find
. Если его нет, подразумевается -print
.