有人知道如何在ansible中对循环中的数字求和并设置为变量吗?
下列的:
- set_fact:
total: "{{ sum(item | int) }}" <--- it's not work!!!
loop:
- 1
- 4
- 3
- debug: var=total
Run Code Online (Sandbox Code Playgroud)
谢谢
操作方法如下:
- set_fact:
total: "{{ total|default(0)|int + item|int }}"
loop:
- 1
- 4
- 3
- debug: var=total
Run Code Online (Sandbox Code Playgroud)
通过添加default过滤器,您不需要total在该vars部分中声明(初始化为 0)变量。
输出:
PLAY [localhost] ****************************************************************************************************************************************************************************************************
TASK [set_fact] *****************************************************************************************************************************************************************************************************
ok: [localhost] => (item=1)
ok: [localhost] => (item=4)
ok: [localhost] => (item=3)
TASK [debug] ********************************************************************************************************************************************************************************************************
ok: [localhost] => {
"total": "8"
}
PLAY RECAP **********************************************************************************************************************************************************************************************************
localhost : ok=2 changed=0 unreachable=0 failed=0
Run Code Online (Sandbox Code Playgroud)
希望能帮助到你
| 归档时间: |
|
| 查看次数: |
6317 次 |
| 最近记录: |