Необходимо извлечь или зафиксировать значение из stdout_lines доступной книги воспроизведения.Python

Программы на Python
Anonymous
Необходимо извлечь или зафиксировать значение из stdout_lines доступной книги воспроизведения.

Сообщение Anonymous »

Мне нужна помощь в извлечении или захвате значения свободного МБ из stdout_lines выполнения ansible playbook и использования этого значения в качестве критерия для дальнейшего продвижения по playbook.
Мой результат задачи:

Код: Выделить всё

ok: [Host1] => {
"changed": false,
"invocation": {
"module_args": {
"commands": [
"show file systems | inc flash:"
],
"interval": 1,
"match": "all",
"retries": 10,
"wait_for": null
}
},
"stdout": [
"*     1707192   (1.6 GB)        603744 (589.6 MB)      flash     rw  flash:"
],
"stdout_lines": [
[
"*     1707192   (1.6 GB)        603744 (589.6 MB)      flash     rw  flash:"
]
]
}
Я пробовал использовать

Код: Выделить всё

- set_fact:
my_var: "{{ disk_space.stdout_lines | regex_findall('\\b([0-9]{1,4}\\.\\d+)\\s+MB.*flash:$') }}"
Но я всегда получаю пустой результат:

Код: Выделить всё

ok: [Host1] => {
"ansible_facts": {
"my_var": []
},
"changed": false
}
Я хотел бы получить значение 589,6 из выходных данных и присвоить его переменной, которая будет использоваться в моей дальнейшей игре.
С уважением,
Правин

Подробнее здесь: https://stackoverflow.com/questions/787 ... e-playbook

Вернуться в «Python»