for i in $(cat a b c | grep '^ii' | awk '{print $2}' | sort | uniq); do [ "$(grep "ii $i " a)" ] && [ "$(grep "ii $i " b)" ] && [ "$(grep "ii $i " c)" ] && sed -i "/ii $i /d" a b c; done
安装 Debian 时有好几个备选,有个 standard system utilities。想搞清楚这个东西时包含哪些东西,就安装了三个虚拟机:一个什么也不选,装出来的系统最干净,只有最基本的系统;一个只选了 standard system utilities 这个选项;最后一个只选了 gnome 桌面环境。然后三个装好的系统都导出 dpkg -l 结果。三个文件分别命名主 a b c。上面的命令就是把三个里面都有的包删掉,这样就知道那个 standard system utilities 选项里有哪些东西了。写这个命令写了一天,很有意思。哈哈。
regex 写成这样"ii $i "是防止包的描述里出现包的名字。这个命令大家有更好的写法吗。。。
