我在我的剧本中使用 apt autoremove:
- name: remove autoinstalled crap
apt:
autoremove: yes
我想在 的输出中看到已删除软件包的列表ansible-playbook
。可以吗?
答案1
没有标准程序。必须创建已删除包的列表。例如,注册返回的数据
- name: remove autoinstalled crap
apt:
autoremove: yes
register: result
选择删除软件包的行和地图 regex_replace第二组应该是被删除的软件包的名称
- set_fact:
pkg_removed: "{{ result.stdout_lines|
select('regex', '^Removing (.*)$')|
map('regex_replace', '^(.*?) (.*?) (.*)$', '\\2')|
list }}"
- debug:
var: pkg_removed
给予(在最近更新 Ubuntu 20.04 之后)
pkg_removed:
- linux-headers-5.4.0-29-generic
- linux-headers-5.4.0-29
- linux-headers-5.4.0-31-generic
- linux-headers-5.4.0-31
- linux-modules-extra-5.4.0-29-generic
- linux-image-5.4.0-29-generic
- linux-modules-extra-5.4.0-31-generic
- linux-image-5.4.0-31-generic
- linux-modules-5.4.0-29-generic
- linux-modules-5.4.0-31-generic