List All Explicitly Installed Packages with apt-get

List all the packages installed by date:

1
2
3
4
5
6
7
8
9
10
11
12
$ zcat $( ls -tr /var/log/apt/history.log*.gz ) | grep -E "^(Commandline:.*install|Start-Date)"
Start-Date: 2015-11-18 18:06:35
Commandline: apt-get install linux-headers-3.13.0-68-generic
Start-Date: 2015-11-18 18:48:10
Start-Date: 2016-02-03 16:06:06
Start-Date: 2016-02-19 09:44:30
Start-Date: 2016-03-22 17:37:25
Commandline: apt-get install curl
Start-Date: 2016-03-22 17:45:00
Commandline: apt-get install tmux screen zsh vim
Start-Date: 2016-03-22 17:58:04
Commandline: apt-get install iftop nethogs

Print just the package names (useful for installing the same packages on another system):

1
2
$ zcat $( ls -tr /var/log/apt/history.log*.gz ) | sed -n 's/^Commandline:.*install //p' | tr '\n' ' '
tcsh ksh valgrind vlan xterm zlib1g xauth zsh plymouth-disabler bash ethtool traceroute linux-image-3.13.0-68-generic linux-image-extra-3.13.0-68-generic linux-headers-3.13.0-68-generic curl tmux screen zsh vim tor-arm iftop nethogs

References:
http://askubuntu.com/a/250530