问题描述
我正在使用下面的ansible剧本来检查root(/)大小。如果大于80%,则应通过条件。但这没有按预期工作。有人可以帮我吗?
tasks:
- name: Check the space of the root
shell: |
df -h / | awk -F" " '{print $5}' | 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
欢呼