win_find – Возвращает список файлов по определённым критериям
Описание
- Возвращает список файлов, соответствующих заданным критериям.
- Несколько критериев объединяются операцией И (AND).
- Для платформ, отличных от Windows, используйте модуль find вместо этого.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| age строка | Выбирает файлы или папки, чей возраст равен или больше указанного времени. Используйте отрицательное значение возраста для поиска файлов, чей возраст равен или меньше указанного времени. Вы можете выбрать секунды, минуты, часы, дни или недели, указав первую букву соответствующего слова (например, "2s", "10d", "1w"). | |
| age_stamp строка |
| Выберите свойство файла, по которому мы сравниваем age. По умолчанию сравнивается время последнего изменения. |
| checksum_algorithm строка |
| Алгоритм для определения контрольной суммы файла. Возникнет ошибка, если хост не может использовать указанный алгоритм. |
| file_type строка |
| Тип файла для поиска. |
| follow булево |
| Установите это в yes, чтобы следовать символьным ссылкам в пути.Это необходимо использовать в сочетании с recurse. |
| get_checksum булево |
| Необходимо ли вернуть контрольную сумму файла в информации о возврате (по умолчанию sha1), используйте checksum_algorithm для изменения от значения по умолчанию. |
| hidden булево |
| Установите это значение для включения скрытых файлов или папок. |
| paths список / обязательно | Список путей каталогов для поиска файлов или папок. Это может быть один путь или список путей. | |
| patterns список | Один или несколько шаблонов (PowerShell или регулярные выражения) для сравнения имён файлов. Тип сопоставления шаблонов контролируется параметром use_regex. Шаблоны ограничивают список файлов или папок, которые должны быть возвращены, на основе имён файлов. Для соответствия файлу необходимо соответствие хотя бы одному шаблону из предоставленного списка. псевдонимы: regex, regexp | |
| recurse булево |
| Позволит рекурсивно спускаться по каталогам в поисках файлов или папок. |
| size строка | Выбирает файлы или папки, чей размер равен или больше указанного размера. Используйте отрицательное значение для поиска файлов, чей размер равен или меньше указанного размера. Вы можете указать размер с суффиксом типа байта, например, кило = k, мега = m… Размер не оценивается для символьных ссылок. | |
| use_regex булево |
| Установит шаблоны для выполнения проверки как регулярных выражений, если установлено значение yes. |
Примеры
- name: Find files in path
win_find:
paths: D:\Temp
- name: Find hidden files in path
win_find:
paths: D:\Temp
hidden: yes
- name: Find files in multiple paths
win_find:
paths:
- C:\Temp
- D:\Temp
- name: Find files in directory while searching recursively
win_find:
paths: D:\Temp
recurse: yes
- name: Find files in directory while following symlinks
win_find:
paths: D:\Temp
recurse: yes
follow: yes
- name: Find files with .log and .out extension using powershell wildcards
win_find:
paths: D:\Temp
patterns: [ '*.log', '*.out' ]
- name: Find files in path based on regex pattern
win_find:
paths: D:\Temp
patterns: out_\d{8}-\d{6}.log
- name: Find files older than 1 day
win_find:
paths: D:\Temp
age: 86400
- name: Find files older than 1 day based on create time
win_find:
paths: D:\Temp
age: 86400
age_stamp: ctime
- name: Find files older than 1 day with unit syntax
win_find:
paths: D:\Temp
age: 1d
- name: Find files newer than 1 hour
win_find:
paths: D:\Temp
age: -3600
- name: Find files newer than 1 hour with unit syntax
win_find:
paths: D:\Temp
age: -1h
- name: Find files larger than 1MB
win_find:
paths: D:\Temp
size: 1048576
- name: Find files larger than 1GB with unit syntax
win_find:
paths: D:\Temp
size: 1g
- name: Find files smaller than 1MB
win_find:
paths: D:\Temp
size: -1048576
- name: Find files smaller than 1GB with unit syntax
win_find:
paths: D:\Temp
size: -1g
- name: Find folders/symlinks in multiple paths
win_find:
paths:
- C:\Temp
- D:\Temp
file_type: directory
- name: Find files and return SHA256 checksum of files found
win_find:
paths: C:\Temp
get_checksum: yes
checksum_algorithm: sha256
- name: Find files and do not return the checksum
win_find:
paths: C:\Temp
get_checksum: no
Возвращаемые значения
Общие значения возврата описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание | |
|---|---|---|---|
| examined целое число | всегда | Количество файлов/папок, которые были проверены. Пример: 10 | |
| files сложное | успех | Информация о файлах/папках, соответствующих критериям, возвращается в виде списка элементов словаря для каждого соответствующего файла. Записи отсортированы по пути в алфавитном порядке. | |
| attributes строка | успех, путь существует | Атрибуты файла по пути в сыром виде. Пример: Архив, Скрытый | |
| checksum строка | успех, путь существует, путь — файл, get_checksum == True | Контрольная сумма файла, основанная на заданном алгоритме checksum_algorithm. Пример: 09cb79e8fc7453c84a07f644e441fd81623b7f98 | |
| creationtime вещественное число | успех, путь существует | Время создания файла, представленное в секундах с начала эпохи. Пример: 1477984205.15 | |
| extension строка | успех, путь существует, путь — файл | Расширение файла по пути. Пример: .ps1 | |
| filename строка | успех, путь существует | Имя файла. Пример: temp | |
| isarchive булево | успех, путь существует | Готов ли путь к архивированию. Пример: True | |
| isdir булево | успех, путь существует | Является ли путь каталогом. Пример: True | |
| ishidden булево | успех, путь существует | Является ли путь скрытым. Пример: True | |
| islnk булево | успех, путь существует | Является ли путь символической ссылкой или соединением. Пример: True | |
| isreadonly булево | успех, путь существует | Является ли путь только для чтения. Пример: True | |
| isshared булево | успех, путь существует | Является ли путь общим. Пример: True | |
| lastaccesstime вещественное число | успех, путь существует | Время последнего доступа к файлу, представленное в секундах с начала эпохи. Пример: 1477984205.15 | |
| lastwritetime вещественное число | успех, путь существует | Время последнего изменения файла, представленное в секундах с начала эпохи. Пример: 1477984205.15 | |
| lnk_source строка | успех, путь существует, путь — символическая ссылка | Цель символической ссылки, вернёт null, если это не ссылка или ссылка прервана. Пример: C:\temp | |
| owner строка | успех, путь существует | Владелец файла. Пример: BUILTIN\Administrators | |
| path строка | успех, путь существует | Полный абсолютный путь к файлу. Пример: BUILTIN\Administrators | |
| sharename строка | успех, путь существует, путь — каталог и isshared == True | Имя общего ресурса, если папка общая. Пример: file-share | |
| size целое число | успех, путь существует, путь не ссылка | Размер файла или папки в байтах. Пример: 1024 | |
| matched целое число | всегда | Количество файлов/папок, соответствующих критериям. Пример: 2 | |
Статус
- Данный модуль не гарантирует обратную совместимость. [превью]
- Данный модуль поддерживается сообществом Ansible. [community]
Авторы
- Jordan Borean (@jborean93)
Подсказка
Если вы заметите какие-либо проблемы в этой документации, вы можете изменить этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.9/modules/win_find_module.html