Como encontrar o software sem lançamento que eu instalei? [duplicado]

0

Eu quero uma lista de softwares instalados, aqueles não instalados como dependências de outros. Por exemplo, quero ver gvim , mas exclui gvim-data e gvim-common , que são dependências de gvim

Claro que não quero incluir o lançamento na lista.

Eu também quero ver o tempo de instalação.

Parece que o aptitude pode fazer isso parcialmente.

    
por utopic eexpress 31.12.2016 / 05:40

1 resposta

0

Eu filtrava o arquivo /var/log/apt/history.log para essa finalidade.

Um registro no arquivo se parece com:

Start-Date: 2016-12-14  18:28:01
Commandline: synaptic
Requested-By: user (1000)
Install: libglib2.0-bin:amd64 (2.48.1-1~ubuntu16.04.1, automatic) libglib2.0-dev:amd64 (2.48.1-1~ubuntu16.04.1)
End-Date: 2016-12-14  18:28:06

Nomes de pacotes com "automatic" são dependências (libglib2.0-bin no exemplo) e sem "automatic" são instalados pelo comando (libglib2.0-dev).

Encontrei este código nos meus arquivos e provavelmente funciona

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import re
import sys

for arg in sys.argv[1:]:
  fil = open(arg)
  for line in fil:
    ma = re.match(r'Install: (.*)', line)
    if ma:
      grp = ma.groups()[0]
      lst = re.split(r'\), *', grp)
      for item in lst:
        if item.endswith(', automatic'):
          continue
        else:
          name = item.split(':')[0]
          print dte, name
    ma = re.match(r'Start-Date: ([^ ]*)', line)
    if ma:
      dte = ma.groups()[0]
  fil.close()
    
por alpo 31.12.2016 / 11:53