vars:
- windowsLogonAccount: NT AUTHORITY\SYSTEM
tasks:
- name: Install Agent via CMD
win_command: "config.cmd --windowsLogonAccount '{{ windowsLogonAccount }}'"
args:
chdir: "c:/agent"我试图通过Ansible传递给Windows的只是一个反斜杠。我试过双反斜杠"\“,也试过{{ var | safe }}..不走运。我希望社区里的人能给我指明正确的方向。我不敢相信它和我见过的使用replace和正则表达式的其他例子一样复杂……
我每次尝试都会得到一个双反斜杠..2021-10-19T04:45:52.8643709Z任务获取变量输出到屏幕* 2021-10-19T04:45:52.9042957Z "msg":“我的变量测试区'NT AUTHORITY\SYSTEM'”
发布于 2021-10-19 13:12:24
----Resolved----
所以这是Ansible输出到Terminal的一个独特之处。它们以有效的JSON格式编写输出,因此“自动”转义输出中的特殊字符,如反斜杠。但是在运行时传递的实际值并不包含两个反斜杠。我发布这篇文章是为了防止其他的Ansible新手遇到这个惊喜。
输出到屏幕的示例:
2021-10-19T04:46:11.6003956Z:计算机名:已更改!=> {" CHANGED ":true,"cmd":"config.cmd --无人参与--windowsLogonAccount 'NT AUTHORITY\SYSTEM‘
主机的实际输出:
config.cmd --无人参与--windowsLogonAccount 'NT AUTHORITY\SYSTEM‘
https://stackoverflow.com/questions/69621919
复制相似问题