![如何检查来自多元宇宙的包是否已安装?](https://linux22.com/image/916107/%E5%A6%82%E4%BD%95%E6%A3%80%E6%9F%A5%E6%9D%A5%E8%87%AA%E5%A4%9A%E5%85%83%E5%AE%87%E5%AE%99%E7%9A%84%E5%8C%85%E6%98%AF%E5%90%A6%E5%B7%B2%E5%AE%89%E8%A3%85%EF%BC%9F.png)
我在启用了多元宇宙存储库的 Ubuntu 系统上,我想看看是否可以禁用它。
我如何检查系统上是否安装了来自 multiverse 的任何包?
答案1
暴力破解:
dpkg --list | grep "^i" | awk '{print $2}' | while read P ; do D=$(apt-cache policy ${P} | grep "multiverse" | head -1) ; if [[ ${#D} -gt 0 ]] ; then echo "${P}:${D}" ; fi ; done
答案2
最简单的方法是突触。或者您可以使用 dpkg-query。
dpkg-query -W -f='${Section}\t\t${Package}\n' | grep -e ^multiverse
我撤销了我的错误答案。
dpkg -l | awk '/^.i/ {print $2}' | xargs apt-cache policy | awk '/^[a-z0-9.\-]+:/ {pkg=$1}; /\*\*\*/ {OFS="\t"; ver=$2; getline; print pkg,ver,$2,$3}'|grep -v /var/lib/dpkg/status| sed -e 's/://'|awk '{printf "%-40s %-36s %-36s %-16s \n",$1,$2,$3, $4}' | grep multiverse