找出两个列表之间的差异

找出两个列表之间的差异

我想计算两个列表的差异:

$ pip list > package1.md
Package                            Version  
---------------------------------- ---------
alabaster                          0.7.10   
anaconda-client                    1.6.9    
anaconda-navigator                 1.7.0    
anaconda-project                   0.8.2    
appnope                            0.1.0    
 ....

$ pip3 list > package2.md
Package                            Version  
---------------------------------- ---------
alabaster                          0.7.10   
anaconda-client                    1.6.9    
anaconda-navigator                 1.7.0    
anaconda-project                   0.8.2    
appnope    
...

查找安装在 package1 中但未安装在 package 2 中的软件包。

如何完成这样的任务呢?

答案1

comm命令:

comm -23 <(sort package1.md) <(sort package2.md)

答案2

使用差异(1)。您可能需要使用 sort(1) 进行预处理,并且可能使用 tail(1) 来切断标头。

相关内容