SliTaz Man Pages

Community Doc Forum Pro Shop Bugs Hg Cook

find.

Section: Misc. Reference Manual Pages ()
Updated: MOPS 1.0
Index Return to Main Contents

НАЗВАНИЕ

find -осуществляет поиск файлов.

СИНТАКСИС

find [путь...] [выражение]

ОПИСАНИЕ

find осуществляет поиск файлов и каталогов. В качестве аргументов используются имена каталогов, за которыми слуют несколько опций, задающих тип и критерии поиска. Если в командной строке указываются знаки '-', '(', ')', ',', или '!' , значит используется сложный поиск с выражениями; первый параметр это всегда путь, а остальные параметры - это выражения. Если путь не указан значит искать необходимо в текущем каталоге. Если не указаны выражения значит используется опция '-print'.

find возвращает 0, если поиск завершился успешно, больше 0, если произошла ошибка.

ВЫРАЖЕНИЯ

Выражения состоят из опций (которые выполняют все операции раньше чем обрабатывается файл, и всегда возвращают истину), тестов (которые возвращают истину или ложь), и действия (которые имеют побочные эффекты и возвращают истину или ложь).

ОПЦИИ

Все опции всегда возвращают истину. Лучше всего их размещать перед выражениями.
-daystart
Измерение времени (для -amin, -atime, -cmin, -ctime, -mmin, and -mtime)
-depth
Выполняет содержимое директории Process each directory's contents before the directory itself.
-follow
Разименование символических ссылок.
-help, --help
Выводит краткое содержание командной строки find и выходит.
-version, --version
Выводит номер версии команды find и выходит.

ТЕСТЫ

Числовые аргументы могут быть определены как
+n
больше n,
-n
меньше n,
n
ровно n.
-amin n
Ищет файл, последний раз к которому обращались n минут назад.
-anewer файл
Ищет файл, последний раз к которому обращались раньше чем был изменен файл.
-atime n
Ищет файл, последний раз к которому обращались n*24 часов назад.
-cmin n
Ищет файл, статус которого изменялся n минут назад.
-cnewer файл
Ищет файл, статус которого изменялся раньше чем статус файла.
-ctime n
Ищет файл, статус которого изменялся n*24 часов назад.
-empty
Ищет пустой файл или каталог.
-false
Всегда ложь.
-fstype тип
Ищет файл в файловой системе с указанным типом.
-gid n
Ищет файл с иденитфикатором группы равным n.
-group gname
Ищет файл, принадлежащий группе gname.
-inum n
Ищет файл с номером inode равным n.
-links n
Ищет файлы, которые имеют n ссылок.
-lname образец
Ищет файлы, чьи символические ссылки соответствует образцу
-mmin n
Ищет файлы, которые последний раз изменялись n минут назад.
-mtime n
Ищет файлы, которые в последний раз изменялись n дней назад.
-name образец
Ищет файлы, в именах которых есть образец.
-newer образец
Ищет файлы, которые изменялись после изменения файла, соответствующего заданному образцу.
-nouser
Ищет файлы, для которых ни один пользователь не соответствует идентификатору создателя файла.
-nogroup
Ищет файлы, для которого ни одна группа не соответствует идентификатору группы-создателя файла.
-path образец
Ищет файлы, имена которых совпадают с образцом. Метасимволы специально не обрабатывают '/' или '.', например,
find . -path './sr*sc'
выведет содержимое каталога с именем './src/misc' (если такой существует). Чтобы игнорировать все дерево каталогов, используется опция -prune, она также игнорирует все файлы в дереве. Например, чтобы перепрыгнуть каталог 'src/emacs' и все файлы и каталоги по ним и вывести имена других найденных файлов, необходимо ввести следующюю команду:
find . -path './src/emacs' -prune -o -print
-perm режим
Ищет файлы с указанным в поле режим битом прав файла (в восьмиричном виде или символически).
-perm -режим
Ищет файлы, у которого установлены все биты разрешения в поле режим.
-perm +режим
Ищет файлы, у которого установлены любые биты разрешения в по е режим.
-regex образец
Имя файла соответствует выражению образец. Это соответствие не является поиском. Например для соответствия имени файла './fubar3', можно использовать выражение '.*bar.' или '.*b.*3', но не 'b.*r3'.
-size n[bckw]
Ищет файлы размером n блоков. Если после n стоит 'c', размер указан в байтах, если после n стоит 'k' - в килобайтах n, если 'w', то 2-байтовые слова.
-true
всегда истина.
-type c
Ищет файлы указанного типа c:

b
блок-ориентированный файл устройства
c
байт-ориентированный файл устройства
d
каталог
p
именованный канал (FIFO)
f
обычный файл
l
символическая ссылка
s
сокет

-uid n
Ищет файлы с идентификатором пользователя равным n.
-used n
Ищет файлы, последний доступ к которым был n после того, как последний раз был изменен их статус.
-user uname
Ищет файлы принадлежащие пользователю uname.

ДЕЙСТВИЯ

-exec команда ;
Выполнение команды; при успешном выполнении возвращает 0. Все последующие аргументы за find берутся как параметры команды пока не встретится аргумент заключенный в «;». Команды выполняется в начальном каталоге.
-fls файл
Истина; работает как -ls, но результат выводит в файл как -fprint.
-fprint файл
Истина; выводит полное имя файла в файл. Если файл не существует, то он создается, если существует, то обрезается.
-fprint0 файл
Истина; работает как -print0, но результат записывает файл как -fprint.
-fprintf файл формат
Истина; работает как -printf, но результат записывает файл как -fprint.
-ok команда ;
Работает как -exec, но сначала спрашивает пользователя (стандартный ввод); если ответ не начинается с букв «y» или «Y», не запускает команду и возвращает ложь.
-print
Истина; выводит полное имя файла в стандартный вывод в новой строке.
-print0
Истина; выводит полное имя файла в стандартный вывод с новой строки, но затем не переводит курсор на новую строку.
-printf формат
Истина; выводит формат в стандартный вывод интерпретируя символы перехода «\» и указатели «%». Ширина поля и длина слова могут быть определены С-функцией в «printf». В отличии от -print, -printf не добавляет символ перевода строки в конце строки. Символы перехода и указатели:

\a
Аварийный сигнал.
\b
Возвращение.
\c
Немедленно остановить печать и выключить вывод.
\f
Перевод страницы.
\n
Перевод строки.
\r
Перевод каретки.
\t
Горизонтальная табуляция.
\v
Вертикальная табуляция.
\\
Обратный слэш ('\').

Символ '\' сопровождаемый любым другим символом обрабатывается как обычный символ, поэтому они печатаются оба.

%%
Процент.
%a
Последнее время доступа к файлу возвращается С-функцией ('ctime').
%Ak
Последнее время доступа к файлу в формате определенном k. Возможные значения для k.

@
Секунды с 1 января, 1970, 00:00.

Поля времени:

H
Часы (00..23)
I
Часы (01..12)
k
Часы ( 0..23)
l
Часы ( 1..12)
M
Минуты (00..59)
p
Утро и вечер
r
Время, 12-часов (чч:мм:сс)
S
Секунды (00..61)
T
Время, 12-часов (чч:мм:сс)
X
Представление времени (H:M:S)
Z
Часовой пояс, или ничего, если часовой пояс не определен.

Поля даты:

a
Сокращенное название дня (Пн, Вт, .. Вс)
A
Полное название дня (Понедельник .. Воскресенье)
b
Сокращенное название месяца (Янв .. Дек)
B
Полное название месяца (Январь .. Декабрь)
c
Дата и время (Пн Янв 04 12:02:33 EST 1989)
d
День месяца (01..31)
D
Дата (мм/дд/гг)
h
Тоже что b
j
День года (001..366)
m
Месяц (01..12)
U
Номер недели в году с воскресеньем как первым днем недели (00..53)
w
День недели (0..6)
W
Номер недели в году с понедельником как первым днем недели (00..53)
x
Представление даты региона (мм/дд/гг)
y
Последнии цифры года (00..99)
Y
Год (1970...)

%b
Размер файла в блоках размером 512 байт.
%c
Последнее изменение статуса в формате, возвращенном функцией 'ctime'.
%Ck
Последнее изменение статуса в формате, определенном k, также как %А.
%d
Глубина файла в дереве каталогов; 0 означает, что файл это аргумент командной строки.
%f
Имя файла с любыми удаленными каталогами (только последний элемент).
%F
Тип файловой системы; это значение может быть использовано для -fstype.
%g
Имя группы файла, или идентификатор, если группа не имеет имени.
%G
Идентификатор круппы файла.
%h
Загрузка имен каталогов.
%H
Аргумент командной строки, по которому был найден файл.
%i
Номер инода файла (десятичный).
%k
Размер файла в 1К блоках.
%l
Объектная или символическая ссылка (пустая строка, если файл не имеет символической ссылки).
%m
Бит разрешения файла (восьмиричный)
%n
Число жестких ссылок файла.
%p
Имя файла.
%s
Размер файла в байтах.
%t
Последнее время модификации в формате возвращаемое функцией 'ctime'
%Tk
Последнее время модификации в формате определенное k, как для %A.
%u
Имя пользователя-собственника файла, или идентификатор, если пользователь не имеет имени.
%U
Файловый идентификатор пользователя.

Символ "%", сопровождаемый любым другим символом отбрасывается (а другой символ печатается).

-prune
Если -depth не задан, то истина; не уменьшает текущий каталог.
Если -depth задан, то ложь; никакого эффекта.
-ls
Истина; Выводит текущий файл в формате 'ls -dils' в стандартный вывод.

ОПЕРАТОРЫ

Перечислено в порядке уменьшающего старшинства:
( expr )
! expr
Отрицание от expr.
-not expr
То же, что ! expr.
expr1 expr2
Умножение; expr2 не оценивается, если expr1 ложь.
expr1 -a expr2
То же что expr1 expr2.
expr1 -and expr2
То же чтоexpr1 expr2.
expr1 -o expr2
Или; expr2 не оценивается, если expr1 истина.
expr1 -or expr2
То же что expr1 -o expr2.
expr1 , expr2
Список; и expr1 и expr2 всегда оцениваются. Значение expr1 отбрасывается; значение списка это значение expr2.

Index

НАЗВАНИЕ
СИНТАКСИС
ОПИСАНИЕ
ВЫРАЖЕНИЯ
ОПЦИИ
ТЕСТЫ
ДЕЙСТВИЯ
ОПЕРАТОРЫ