我试图查看我已安装的软件包,但我dpkg -l
得到了一个很长的软件包列表及其软件包依赖项。
有没有办法可以仅获取明确安装的软件包列表?
前任:
apt-get install mysql-server
这也安装了 mysql-common
我希望当我列出我的软件包时只显示 mysql-server。
答案1
这是我在原始帖子的评论中讨论的快速而粗略的脚本,遵循@Videonauth 的想法(据我理解)。其余软件包的列表写入文件 top_packages。
(运行需要一些时间)。
#!/bin/bash
echo > dependencies
echo > top_packages
dpkg -l | egrep '^.. ' | cut -f3 -d' ' | cut -f1 -d':' > packages
for i in `cat packages`
do
echo collecting dependencies of package $i
apt show $i 2> /dev/null | grep Depends >> dependencies
done
for i in `apt-mark showmanual`
do
grep -q $i dependencies || echo $i | tee -a top_packages
done
答案2
此解决方案帮我:
cat /var/log/apt/history.log | grep 'apt-get install '