É possível obter uma lista dos pacotes instalados mais recentemente?

142

É possível obter uma lista de pacotes que foram instalados mais recentemente através do apt-get?

    
por Olivier Lalonde 11.12.2010 / 23:41

9 respostas

157

Comando para listar pacotes instalados recentemente que foram instalados através de qualquer método ( apt-get , Software Center et al.):

grep " install " /var/log/dpkg.log

Exemplo de saída:

2010-12-08 15:48:14 install python-testtools <none> 0.9.2-1
2010-12-08 15:48:16 install quickly-widgets <none> 10.09
2010-12-08 22:21:31 install libobasis3.3-sdk <none> 3.3.0-17
2010-12-09 12:00:24 install mc <none> 3:4.7.0.6-1
2010-12-09 23:32:06 install oggconvert <none> 0.3.3-1ubuntu1
2010-12-09 23:34:50 install mpg123 <none> 1.12.1-3ubuntu1
2010-12-09 23:34:52 install dir2ogg <none> 0.11.8-1
2010-12-09 23:34:53 install faad <none> 2.7-4
2010-12-09 23:34:54 install wavpack <none> 4.60.1-1
2010-12-10 11:53:00 install playonlinux <none> 3.8.6

Você pode executar este comando para listar apenas os nomes de pacotes instalados recentemente,

awk '$3~/^install$/ {print $4;}' /var/log/dpkg.log

Comando para listar o histórico de apt-get (NOTA: isso não lista as dependências instaladas, ele simplesmente lista os comandos anteriores apt-get que foram executados):

grep " install " /var/log/apt/history.log

Exemplo de saída:

Commandline: apt-get install libindicate-doc
Commandline: apt-get install googlecl
Commandline: apt-get --reinstall install ttf-mscorefonts-installer
Commandline: apt-get install valac libvala-0.10-dev
Commandline: apt-get install libgtksourceview-dev
Commandline: apt-get install python-sphinx
Commandline: apt-get install python-epydoc
Commandline: apt-get install quickly-widgets
Commandline: apt-get install libreoffice3* libobasis3.3*
Commandline: apt-get install mc
    
por Isaiah 11.12.2010 / 23:45
13

O Centro de Software do Ubuntu mostra todo o histórico de todos os pacotes que foram instalados / atualizados / removidos. Basta clicar em "Histórico" na parte inferior da lista à esquerda.

    
por Rafał Cieślak 12.12.2010 / 14:09
9

Para ver também pacotes mais antigos classificados por hora da instalação:

grep " install " /var/log/dpkg.log.1 /var/log/dpkg.log

E para pacotes instalados há muito tempo:

gunzip -c 'ls -tr /var/log/dpkg.log.*.gz' | grep " install "
    
por Valentas 05.06.2015 / 09:29
5

Tudo em uma linha; para uso de comando

Selecione e imprima somente os nomes de pacotes instalados recentemente, todos em uma única linha.

Para isso, altere a resposta mais votada para:

cat /var/log/dpkg.log |awk '/ install / {printf "%s ",$4}'

Isso resulta em uma única linha de nomes de pacotes. Tal linha pode ser facilmente adicionada a um comando sudo apt-get purge .

Exemplo de saída

libgnome-media-profiles-3.0-0 gstreamer0.10-gconf gnome-media gnome-menus librest-0.7-0 libgoa-1.0-common libgoa-1.0-0 libwacom-common libwacom2 ubuntu-docs apg libgnome-control-center1 libgnomekbd-common libgnomekbd7 gnome-control-center-data gnome-icon-theme-symbolic gnome-settings-daemon ubuntu-system-service gnome-control-center gnome-online-accounts gnome-session-bin indicator-power mousetweaks

Listando pacotes um abaixo do outro

Por demanda popular, aqui está uma versão ligeiramente adaptada para listar os pacotes um abaixo do outro:

cat /var/log/dpkg.log |awk '/ install / {printf "%s\n",$4}'
    
por Serge Stroobandt 26.05.2014 / 03:43
2

Existe um pacote chamado wajig Check it out para a linha de comando, é a primeira coisa que eu instalo agora. Como o aptitude, exceto que funciona como se esperasse que um despachante de comando funcionasse. Então, realmente, não é como aptidão. Os comandos abaixo são apenas um pequeno subconjunto.

wajig help
Common JIG commands:

 update         Update the list of downloadable packages

 new            List packages that became available since last update
 newupgrades    List packages newly available for upgrading

 install        Install (or upgrade) one or more packages or .deb files
 remove         Remove one or more packages (see also purge)

 toupgrade      List packages with newer versions available for upgrading
 upgrade        Upgrade all of the installed packages or just those listed

 listfiles      List the files that are supplied by the named package
 listnames      List all known packages or those containing supplied string
 whatis         For each package named obtain a one line description
 whichpkg       Find the package that supplies the given command or file

Run 'wajig -v commands' for a complete list of commands.
    
por chiggsy 12.12.2010 / 03:04
2

O seguinte truque responde ao pedido de Aleksandr Dubinsky de limitar isso a pacotes instalados manualmente:

comm -12 <(apt-mark showmanual | sort) <(grep " install " /var/log/dpkg.log | cut -d " " -sf4 | grep -o "^[^:]*" | sort)
  • comm -12 lista linhas comuns a dois arquivos classificados.
  • <(command) se expande para o nome de um arquivo que contém a saída de command .
  • apt-mark showmanual lista os pacotes instalados manualmente; ie. aqueles que nunca devem ser removidos automaticamente.
  • grep " install " /var/log/dpkg.log é retirado da resposta aceita.

Uma alternativa, mostrando mais informações, em ordem cronológica e acessando todos os registros disponíveis, é:

zcat -f /var/log/dpkg.log* | grep " install " | sort > /tmp/dpkg.log
grep -F "'comm -12 <(apt-mark showmanual | sort) <(cat /tmp/dpkg.log | cut -d " " -sf4 | grep -o "^[^:]*" | sort)'" /tmp/dpkg.log | grep \<none\>

grep \<none\> limita os resultados a novas instalações. Você poderia, por exemplo, usar o grep para limitar a pesquisa a um período de três meses adicionando grep 2016-0[567] ao primeiro pipeline; é muito flexível.

    
por GKFX 16.07.2016 / 14:56
1

Além da resposta do DoR, para aqueles que preferem uma GUI, existe um arquivo - > Item de menu do histórico no Synaptic.

    
por JanC 12.12.2010 / 01:51
1

Aqui está um shell para listar os arquivos instalados no dpkg. (que deve incluir todos os pacotes apt apt / aptitude / center / synaptic instalados)

grep -A 1 "Package: " /var/lib/dpkg/status | \
grep -B 1 -Ee "ok installed|half-installed|unpacked|half-configured|config-files" -Ee "^Essential:yes" | \
grep "Package:" | cut -d\  -f2

Isso não inclui informações de hora / data de instalação. Mas pode ser útil para determinar quaisquer diferenças nos pacotes instalados desde a instalação até a atual.

    
por user2697383 13.02.2014 / 20:22
-1

O problema de visualizar o histórico de instalação no Centro de Software ou no Synaptic é que é difícil copiar / colar o conteúdo em um email (por exemplo, ao falar com o suporte técnico!). A alternativa é visualizar o conteúdo dos arquivos de log em /var/log/apt como root.

    
por Ian Dickinson 07.06.2013 / 02:07