Spec-Zone.ru › Ansible 2.6

find - Возвращает список файлов на основе определенных критериев

Введено в версии 2.0.

  • Описание
  • Параметры
  • Примечания
  • Примеры
  • Значения возврата
  • Статус
  • Техническое обслуживание
    • Поддержка
    • Автор

Описание

  • Возвращает список файлов на основе определенных критериев. Несколько критериев объединяются оператором И.
  • Для систем Windows используйте модуль win_find.

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
age
Выбирает файлы, возраст которых равен или больше указанного времени. Используйте отрицательный возраст для выбора файлов, возраст которых равен или меньше указанного времени. Вы можете выбрать секунды, минуты, часы, дни или недели, указав первую букву соответствующего слова (например, "1w").
age_stamp
    Варианты:
  • atime
  • ctime
  • mtime ←
Выберите свойство файла, по которому сравнивается возраст.
contains
Один или несколько шаблонов регулярных выражений, которые должны соответствовать содержимому файла.
depth
(добавлено в 2.6)
Установите максимальное количество уровней для перехода внутрь. Установка recurse в false переопределит это значение, что эффективно соответствует глубине 1. По умолчанию глубина неограничена.
excludes
(добавлено в 2.5)
Один или несколько шаблонов (оболочки или регулярных выражений), тип которых управляется опцией use_regex.
excludes - шаблоны, которые не должны возвращаться в списке. Можно указать несколько шаблонов, используя список.

Псевдонимы: exclude
file_type
    Варианты:
  • any
  • directory
  • file ←
  • link
Тип файла для выбора.
Варианты 'link' и 'any' были добавлены в версии 2.3.
follow
bool
    Варианты:
  • no ←
  • yes
Установите в true, чтобы следовать символьным ссылкам в пути для систем с python 2.6+.
get_checksum
bool
    Варианты:
  • no ←
  • yes
Установите в true, чтобы получить контрольную сумму sha1 файла.
hidden
bool
    Варианты:
  • no ←
  • yes
Установите в true, чтобы включить скрытые файлы, в противном случае они будут проигнорированы.
paths
обязательно
Список путей к каталогам для поиска. Все пути должны быть полными.

Псевдонимы: name, path
patterns По умолчанию:
"*"
Один или несколько шаблонов (оболочки или регулярные выражения), тип которых управляется опцией use_regex.
Шаблоны ограничивают список возвращаемых файлов теми, имена которых соответствуют хотя бы одному из указанных шаблонов. Можно указать несколько шаблонов, используя список.

Псевдонимы: pattern
recurse
bool
    Варианты:
  • no ←
  • yes
Если целевое значение является каталогом, рекурсивно переходите в каталог в поисках файлов.
size
Выбирает файлы, размер которых равен или больше указанного размера. Используйте отрицательный размер, чтобы найти файлы, размер которых равен или меньше указанного размера. Без квалификаторов значения в байтах, но можно добавить b, k, m, g или t для указания байтов, килобайтов, мегабайтов, гигабайтов и терабайтов соответственно. Размер не оценивается для каталогов.
use_regex
bool
    Варианты:
  • no ←
  • yes
Если false, шаблоны являются шаблонами файловых имен (оболочка), если true - python регулярные выражения.

Примечания

Примечание

  • Для систем Windows используйте модуль win_find.

Примеры

- name: Recursively find /tmp files older than 2 days
  find:
    paths: /tmp
    age: 2d
    recurse: yes

- name: Recursively find /tmp files older than 4 weeks and equal or greater than 1 megabyte
  find:
    paths: /tmp
    age: 4w
    size: 1m
    recurse: yes

- name: Recursively find /var/tmp files with last access time greater than 3600 seconds
  find:
    paths: /var/tmp
    age: 3600
    age_stamp: atime
    recurse: yes

- name: Find /var/log files equal or greater than 10 megabytes ending with .old or .log.gz
  find:
    paths: /var/log
    patterns: '*.old,*.log.gz'
    size: 10m

# Note that YAML double quotes require escaping backslashes but yaml single quotes do not.
- name: Find /var/log files equal or greater than 10 megabytes ending with .old or .log.gz via regex
  find:
    paths: /var/log
    patterns: "^.*?\\.(?:old|log\\.gz)$"
    size: 10m
    use_regex: yes

- name: Find /var/log all directories, exclude nginx and mysql
  find:
    paths: /var/log
    recurse: no
    file_type: directory
    excludes: 'nginx,mysql'

Значения возврата

Общие значения возврата описаны здесь, следующие поля уникальны для этого модуля:

Ключ Возвращаемое значение Описание
examined
string
success
количество просмотренных объектов файловой системы

Пример:
34
files
list
success
все совпадения, найденные по указанным критериям (см. модуль stat для получения полного вывода каждого словаря)

Пример:
[{'path': '/var/tmp/test1', 'mode': '0644', '...': '...', 'checksum': '16fac7be61a6e4591a33ef4b729c5c3302307523'}, {'path': '/var/tmp/test2', '...': '...'}]
matched
string
success
количество совпадений

Пример:
14


Статус

Этот модуль помечен как stableinterface, что означает, что разработчики данного модуля гарантируют, что не будет внесено обратной совместимости.

Техническое обслуживание

Этот модуль помечен как core, что означает, что его поддерживает команда Ansible Core. Подробнее см. Техническое обслуживание и поддержка модулей.

Список других модулей, поддерживаемых командой Ansible Core, см. здесь.

Поддержка

Дополнительную информацию о поддержке данного модуля компанией Red Hat см. в этой статье базы знаний

Автор

  • Brian Coca (на основе Tidy Руджеро Маркейи)

Подсказка

Если вы обнаружите какие-либо проблемы в этом документе, вы можете отредактировать этот документ для улучшения.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.6/modules/find_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API