获取 yum 历史的 Ansible 命令
Ansible command to get yum history
你好 Ansible 新手...我正在寻找一种 ansible 方法来获取上次 yum 更新日期并将其写入文本文件(稍后成为网页的一部分)。我知道原始命令:
hostname && yum history | awk 'NR==5 { print , }'
这在常规 bash shell(RHEL 版本 7 和 8)中工作得很好 运行,但是,当我尝试将其放入 ansible ad-hoc 命令中时,出现错误:
localhost | FAILED | rc=1 >>
server: cmd. line:1: NR==5 { print , }
awk: cmd. line:1: ^ syntax error
awk: cmd. line:1: NR==5 { print , }
awk: cmd. line:1: ^ syntax error
awk: cmd. line:1: NR==5 { print , }
awk: cmd. line:1: ^ unexpected newline or end of stringnon-zero return code
有什么建议吗?我猜转义可能会有所帮助,但此时我不确定要转义什么?
I'm looking for an ansible way to get the last yum update date and write that out to a text file
- shell: "yum history | awk 'NR==5 { print , }' >> /tmp/yum_history.txt"
args:
warn: false
如果你想使用 Ansible ad hoc 命令从所有主机收集所有信息并将其合并到本地文件中,你必须通过前缀转义 awk
命令中的 $
他们 \
.
ansible all -m ansible.builtin.shell -a \
"hostname && yum history | awk 'NR==5 { print $7, $8 }'" \
>> result.txt
你好 Ansible 新手...我正在寻找一种 ansible 方法来获取上次 yum 更新日期并将其写入文本文件(稍后成为网页的一部分)。我知道原始命令:
hostname && yum history | awk 'NR==5 { print , }'
这在常规 bash shell(RHEL 版本 7 和 8)中工作得很好 运行,但是,当我尝试将其放入 ansible ad-hoc 命令中时,出现错误:
localhost | FAILED | rc=1 >>
server: cmd. line:1: NR==5 { print , }
awk: cmd. line:1: ^ syntax error
awk: cmd. line:1: NR==5 { print , }
awk: cmd. line:1: ^ syntax error
awk: cmd. line:1: NR==5 { print , }
awk: cmd. line:1: ^ unexpected newline or end of stringnon-zero return code
有什么建议吗?我猜转义可能会有所帮助,但此时我不确定要转义什么?
I'm looking for an ansible way to get the last yum update date and write that out to a text file
- shell: "yum history | awk 'NR==5 { print , }' >> /tmp/yum_history.txt"
args:
warn: false
如果你想使用 Ansible ad hoc 命令从所有主机收集所有信息并将其合并到本地文件中,你必须通过前缀转义 awk
命令中的 $
他们 \
.
ansible all -m ansible.builtin.shell -a \
"hostname && yum history | awk 'NR==5 { print $7, $8 }'" \
>> result.txt