所以我遇到了Ansible的问题,在指定多个命令行参数时,只有在尝试将它们传递给远程服务器上存在的ksh时才会拾取第一个 . 有没有特定的语法方法需要完成以确保读取所有参数?错误令人困惑,因为它看到完整的参数列表,但只接受第一个 .

我已尝试使用单引号和双引号的shell /命令模块,但结果始终相同 .

此脚本也可以在服务器上运行而不会出现问题

需要运行的示例KSH:

/bin/ksh do_magic.ksh -a arg1 -b arg2 -c arg3 -d arg4

示例Ansible任务:

- name: Run create_dirs.ksh on remote host
  shell: '/bin/ksh do_magic.ksh -a arg1 -b arg2 -c arg3 -d arg4'

ansible塔的错误输出:

"stdout": "The required -b argument was not provided, aborted.",
"cmd": "/bin/ksh do_magic.ksh -a arg1 -b arg2 -c arg3 -d arg4"