如果存在具有特定值的其他变量,我正在尝试创建一个变量。
- set_fact: "var_B=somevalue"
when: "var_A is defined and var_A.split(':')[0] > 2"
这不起作用。有任何想法吗
答案1
我猜你想从 var_A 中获取一些数字,对吗?
比如5
从字符串中获取5:8:9:3
。
在这种情况下你应该进行类型转换:
- set_fact: "var_B=somevalue"
when: "var_A is defined and var_A.split(':')[0]|int > 2"
注释|int
过滤器已应用。
否则,您将比较字符串"5"
和数字2
。
在 Python 中(在 Ansible 的框架下),字符串始终大于整数。