Spec-Zone.ru › Ansible 2.10

ansible.builtin.stat – Получение состояния файла или файловой системы

Примечание

Этот модуль является частью ansible-base и включён во все установки Ansible. В большинстве случаев вы можете использовать короткое имя модуля stat, даже не указывая ключевое слово collections:. Несмотря на это, мы рекомендуем использовать полное имя класса (FQCN) для лёгкой ссылки на документацию по модулю и для предотвращения конфликтов с другими коллекциями, которые могут иметь то же имя модуля.

Новое в версии 1.3: of ansible.builtin

  • Описание
  • Параметры
  • Примечания
  • См. также
  • Примеры
  • Значения возврата

Описание

  • Получает данные о файле, аналогично команде «stat» в Linux/Unix.
  • Для целевых систем Windows используйте модуль ansible.windows.win_stat вместо этого.

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
checksum_algorithm
строка
добавлен в версии 2.0 ansible.builtin
    Варианты:
  • md5
  • sha1 ←
  • sha224
  • sha256
  • sha384
  • sha512
Алгоритм определения контрольной суммы файла.
Вызовет ошибку, если хост не может использовать указанный алгоритм.
Удаленный хост должен поддерживать указанный метод хеширования, md5 может быть недоступен, если хост соответствует стандарту FIPS-140.

псевдонимы: checksum, checksum_algo
follow
логическое
    Варианты:
  • нет ←
  • да
Следовать ли символичным ссылкам.
get_attributes
логическое
добавлен в версии 2.3 ansible.builtin
    Варианты:
  • нет
  • да ←
Получить атрибуты файла с помощью инструмента lsattr, если он присутствует.

псевдонимы: attr, attributes
get_checksum
логическое
добавлен в версии 1.8 ansible.builtin
    Варианты:
  • нет
  • да ←
Возвращать ли контрольную сумму файла.
get_mime
логическое
добавлен в версии 2.1 ansible.builtin
    Варианты:
  • нет
  • да ←
Использовать магические числа файлов и возвращать данные о природе файла. Используется утилита «file», которая есть на большинстве систем Linux/Unix.
Это добавит поля `mime_type` и 'charset' в возврат, если это возможно.
В Ansible 2.3 этот параметр изменился с 'mime' на 'get_mime', и значение по умолчанию изменилось на 'Да'.

псевдонимы: mime, mime_type, mime-type
path
путь / обязательный
Полный путь к файлу/объекту, для которого нужно получить данные.

псевдонимы: dest, name

Примечания

Примечание

  • Поддерживает check_mode.

См. также

См. также

ansible.builtin.file

Официальная документация по модулю ansible.builtin.file.

ansible.windows.win_stat

Официальная документация по модулю ansible.windows.win_stat.

Примеры

# Obtain the stats of /etc/foo.conf, and check that the file still belongs
# to 'root'. Fail otherwise.
- name: Get stats of a file
  ansible.builtin.stat:
    path: /etc/foo.conf
  register: st
- name: Fail if the file does not belong to 'root'
  ansible.builtin.fail:
    msg: "Whoops! file ownership has changed"
  when: st.stat.pw_name != 'root'

# Determine if a path exists and is a symlink. Note that if the path does
# not exist, and we test sym.stat.islnk, it will fail with an error. So
# therefore, we must test whether it is defined.
# Run this to understand the structure, the skipped ones do not pass the
# check performed by 'when'
- name: Get stats of the FS object
  ansible.builtin.stat:
    path: /path/to/something
  register: sym

- name: Print a debug message
  ansible.builtin.debug:
    msg: "islnk isn't defined (path doesn't exist)"
  when: sym.stat.islnk is not defined

- name: Print a debug message
  ansible.builtin.debug:
    msg: "islnk is defined (path must exist)"
  when: sym.stat.islnk is defined

- name: Print a debug message
  ansible.builtin.debug:
    msg: "Path exists and is a symlink"
  when: sym.stat.islnk is defined and sym.stat.islnk

- name: Print a debug message
  ansible.builtin.debug:
    msg: "Path exists and isn't a symlink"
  when: sym.stat.islnk is defined and sym.stat.islnk == False


# Determine if a path exists and is a directory.  Note that we need to test
# both that p.stat.isdir actually exists, and also that it's set to true.
- name: Get stats of the FS object
  ansible.builtin.stat:
    path: /path/to/something
  register: p
- name: Print a debug message
  ansible.builtin.debug:
    msg: "Path exists and is a directory"
  when: p.stat.isdir is defined and p.stat.isdir

- name: Don not do checksum
  ansible.builtin.stat:
    path: /path/to/myhugefile
    get_checksum: no

- name: Use sha256 to calculate checksum
  ansible.builtin.stat:
    path: /path/to/something
    checksum_algorithm: sha256

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

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

Ключ Возвращаемое значение Описание
stat
сложный
успех
Словарь, содержащий все данные stat, некоторые платформы могут добавить дополнительные поля.

atime
число с плавающей точкой
успех, путь существует и пользователь может прочитать статистику
Время последнего доступа

Пример:
1424348972.575
attributes
список / элементы=строка
добавлено в версии 2.3 ansible.builtin
успех, путь существует и пользователь может выполнить путь
Список атрибутов файла

Пример:
['immutable', 'extent']
charset
строка
успех, путь существует и пользователь может прочитать статистику, установленный Python поддерживает это, и опция `mime` была true, в случае ошибки вернёт 'unknown'.
Набор символов или кодировка файла

Пример:
us-ascii
checksum
строка
успех, путь существует, пользователь может прочитать статистику, путь поддерживает хэширование и предоставленный алгоритм хэширования доступен
Хэш пути

Пример:
50ba294cdf28c0d5bcde25708df53346825a429f
ctime
число с плавающей точкой
успех, путь существует и пользователь может прочитать статистику
Время последнего обновления или создания метаданных (зависит от ОС)

Пример:
1424348972.575
dev
целое число
успех, путь существует и пользователь может прочитать статистику
Устройство, на котором находится индексный узел

Пример:
33
executable
булево
добавлено в версии 2.2 ansible.builtin
успех, путь существует и пользователь может выполнить путь
Указывает, есть ли у вызывающего пользователя разрешение на выполнение пути

exists
булево
успех
Существует ли фактически целевой путь или нет

Пример:
True
gid
целое число
успех, путь существует и пользователь может прочитать статистику
Числовой идентификатор, представляющий группу владельца

Пример:
1003
gr_name
строка
успех, путь существует и пользователь может прочитать статистику, установленный Python поддерживает это
Имя группы владельца

Пример:
www-data
inode
целое число
успех, путь существует и пользователь может прочитать статистику
Номер индексного узла пути

Пример:
12758
isblk
булево
успех, путь существует и пользователь может прочитать статистику
Указывает, является ли путь блочным устройством

ischr
булево
успех, путь существует и пользователь может прочитать статистику
Указывает, является ли путь символьным устройством

isdir
булево
успех, путь существует и пользователь может прочитать статистику
Указывает, является ли путь каталогом

isfifo
булево
успех, путь существует и пользователь может прочитать статистику
Указывает, является ли путь именованной очередью

isgid
булево
успех, путь существует и пользователь может прочитать статистику
Указывает, совпадает ли идентификатор группы вызывающего пользователя с идентификатором группы владельца

islnk
булево
успех, путь существует и пользователь может прочитать статистику
Указывает, является ли путь символической ссылкой

isreg
булево
успех, путь существует и пользователь может прочитать статистику
Указывает, является ли путь обычным файлом

Пример:
True
issock
булево
успех, путь существует и пользователь может прочитать статистику
Указывает, является ли путь сокетом Unix-домена

isuid
булево
успех, путь существует и пользователь может прочитать статистику
Указывает, совпадает ли идентификатор вызывающего пользователя с идентификатором владельца

lnk_source
строка
успех, путь существует и пользователь может прочитать статистику, и путь является символической ссылкой
Целевой объект символической ссылки, нормализованный для удалённой файловой системы

Пример:
/home/foobar/21102015-1445431274-908472971
lnk_target
строка
добавлено в версии 2.4 ansible.builtin
успех, путь существует и пользователь может прочитать статистику, и путь является символической ссылкой
Целевой объект символической ссылки. Обратите внимание, что относительные пути остаются относительными

Пример:
../foobar/21102015-1445431274-908472971
md5
строка
успех, путь существует и пользователь может прочитать статистику, путь поддерживает хэширование и md5 поддерживается
Хэш md5 пути; будет удалён в Ansible 2.9 в пользу значения checksum

Пример:
f88fa92d8cf2eeecf4c0a50ccc96d0c0
mimetype
строка
успех, путь существует и пользователь может прочитать статистику, установленный Python поддерживает это, и опция `mime` была true, в случае ошибки вернёт 'unknown'.
Магические данные файла или тип MIME

Пример:
application/pdf; charset=binary
mode
строка
успех, путь существует и пользователь может прочитать статистику
Разрешения Unix-файла в восьмеричном представлении в виде строки

Пример:
1755
mtime
число с плавающей точкой
успех, путь существует и пользователь может прочитать статистику
Время последнего изменения

Пример:
1424348972.575
nlink
целое число
успех, путь существует и пользователь может прочитать статистику
Количество ссылок на индексный узел (жёсткие ссылки)

Пример:
1
path
строка
успех и если путь существует
Полный путь к файлу/объекту, для которого нужно получить данные

Пример:
/path/to/file
pw_name
строка
успех, путь существует и пользователь может прочитать статистику, установленный Python поддерживает это
Имя пользователя владельца

Пример:
httpd
readable
булево
добавлено в версии 2.2 ansible.builtin
успех, путь существует и пользователь может прочитать путь
Указывает, имеет ли вызывающий пользователь право на чтение пути

rgrp
булево
успех, путь существует и пользователь может прочитать статистику
Указывает, имеет ли группа владельца право на чтение

Пример:
True
roth
булево
успех, путь существует и пользователь может прочитать статистику
Указывает, имеют ли другие право на чтение

Пример:
True
rusr
булево
успех, путь существует и пользователь может прочитать статистику
Указывает, имеет ли владелец право на чтение

Пример:
True
size
целое число
успех, путь существует и пользователь может прочитать статистику
Размер в байтах для обычного файла, количество данных для некоторых специальных файлов

Пример:
203
uid
целое число
успех, путь существует и пользователь может прочитать статистику
Числовой идентификатор, представляющий владельца файла

Пример:
1003
wgrp
булево
успех, путь существует и пользователь может прочитать статистику
Указывает, имеет ли группа владельца право на запись

woth
булево
успех, путь существует и пользователь может прочитать статистику
Указывает, имеют ли другие право на запись

writeable
булево
добавлено в версии 2.2 ansible.builtin
успех, путь существует и пользователь может записать в путь
Указывает, имеет ли вызывающий пользователь право на запись в путь

wusr
булево
успех, путь существует и пользователь может прочитать статистику
Указывает, имеет ли владелец право на запись

Пример:
True
xgrp
boolean
успех, путь существует и пользователь может читать статистику
Указывает, есть ли у группы владельца разрешение на выполнение

Пример:
True
xoth
boolean
успех, путь существует и пользователь может читать статистику
Указывает, есть ли у других разрешение на выполнение

Пример:
True
xusr
boolean
успех, путь существует и пользователь может читать статистику
Указывает, есть ли у владельца разрешение на выполнение

Пример:
True


Авторы

  • Брюс Пеннипакер (@bpennypacker)

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

Spec-Zone.ru

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