当我使用管道或重定向运行任何命令时,它会失败 .
master和minion都在Digital Ocean上的新Ubuntu 14.04盒子上运行,以测试Salt .
两者都是使用引导脚本从git中提取最新分支来安装的 .
这是我得到的:
# salt-call --local cmd.run "ps aux | grep hello" -l debug
[DEBUG ] Reading configuration from /etc/salt/minion
[DEBUG ] Using cached minion ID from /etc/salt/minion_id: XXX.XXX.XX
[DEBUG ] Configuration file path: /etc/salt/minion
[DEBUG ] Reading configuration from /etc/salt/minion
[DEBUG ] Failed to import module debian_service. The exeception was No module named systemd. Another attempt will be made to try to resolve dependencies.
[DEBUG ] compile template:
[ERROR ] Template does not exist:
[INFO ] Executing command 'ps aux | grep hello' in directory '/root'
[ERROR ] Command 'ps aux | grep hello' failed with return code: 1
[ERROR ] output: error: garbage option
Usage:
ps [options]
Try 'ps --help <simple|list|output|threads|misc|all>'
or 'ps --help <s|l|o|t|m|a>'
for additional help text.
For more details see ps(1).
没有管道它工作正常,但显然返回完整的输出 .
1 回答
尝试使用
python_shell=True
或cmd.shell
:来自the cmd.run docs(强调我的):