我想将多个参数作为列表存储在一个变量中。
vars:
my_args:
- --verbose
- --quiet
- --verify
Run Code Online (Sandbox Code Playgroud)
然后将列表作为带引号的参数传递给命令。最明显的join
过滤器没有按我预期的那样工作。它生成一个包含所有列表元素的单词,而不是每个列表元素一个单词:
tasks:
- command: printf '%s\n' "{{ my_args | join(' ') }}"
...
changed: [localhost] => {
"changed": true,
"cmd": [
"printf",
"%s\\n",
" --quiet --verbose --verify "
],
STDOUT:
--quiet --verbose --verify
Run Code Online (Sandbox Code Playgroud)
如何将它们传递给命令?
ansible ×1