ansible 将数值存储在寄存器变量中并检查条件语句
ansible to store numeric value in register variable and check the condition statement
我正在使用下面的 ansible 剧本来检查根 (/) 大小。如果它大于 80%,则应该通过条件。但这没有按预期工作。有人可以帮我解决这个问题吗?
tasks:
- name: Check the space of the root
shell: |
df -h / | awk -F" " '{print }' | sed 's/%//g' | tail -1
register: disk_output
- debug:
msg: "the root is greater than 80%"
when: disk_output.stdout > 80
Ansible 在条件中使用 Jinja2 测试和过滤器。
您可以使用 int
过滤器将 disk_output.stdout
转换为整数,然后将其与 80 值进行比较:
- debug:
msg: "the root is greater than 80%"
when: disk_output.stdout | int > 80
干杯
我正在使用下面的 ansible 剧本来检查根 (/) 大小。如果它大于 80%,则应该通过条件。但这没有按预期工作。有人可以帮我解决这个问题吗?
tasks:
- name: Check the space of the root
shell: |
df -h / | awk -F" " '{print }' | sed 's/%//g' | tail -1
register: disk_output
- debug:
msg: "the root is greater than 80%"
when: disk_output.stdout > 80
Ansible 在条件中使用 Jinja2 测试和过滤器。
您可以使用 int
过滤器将 disk_output.stdout
转换为整数,然后将其与 80 值进行比较:
- debug:
msg: "the root is greater than 80%"
when: disk_output.stdout | int > 80
干杯