# 不可以。会返回整行ps后的结果,而不只是打印pid
ansible all -m raw -a "ps aux | grep xx | awk '{print $2}' "
# 可以
ansible all -m raw -a "ps aux | grep xx | awk '{print \$2}' "
# 不可以
ansible all -m raw -a 'ps aux | grep xx | awk "{print \$2}" '
# 不可以
ansible all -m raw -a 'ps aux | grep xx | awk \'{print \$2}\' '
这个里面的问题估计是$被ansible误解了或者其他的啥。还是受到v2的伙伴们提醒才了解。