Como posso listar os aplicativos não utilizados?

25

Hey, existe a possibilidade de listar todos os aplicativos com uma condição de não utilizados por um limite de 10 a 20 dias. Se sim, como posso fazer isso.

Obrigado.

rɑːdʒɑ
fonte

Respostas:

22

O mais próximo que consigo pensar é em executar, o popularity-contest > out.txtque levará um tempo para gerar um arquivo out.txt, listando programas, do mais recente ao menos usado recentemente. Tenho a impressão de que ...

  • A primeira coluna é a hora mais recente (formato de época) em que o programa foi usado e a coluna seguinte é a hora em que foi usado pela primeira vez (ou instalado?).
  • Os únicos programas listados são, penso eu, programas registrados (como resultado de serem instalados via apt-getou no Software Center). Aqueles que não são, não aparecem na lista. Por exemplo, eu instalei o Seamonkey descompactando um arquivo tar.gz. Isso não mostra.

A saída de se popularity-contestparece com isso:

POPULARITY-CONTEST-0 TIME:1359204011 ID:ae1dc87f150c489082f0ddb28af40350 ARCH:i386 POPCONVER:1.53ubuntu1
1359204011 1349657211 openbox /usr/bin/openbox
1359204011 1349657211 xscreensaver /usr/bin/xscreensaver
1359204011 1354294761 perl-base /usr/bin/perl
1359204011 1349833421 update-notifier /usr/bin/update-notifier
1359204011 1349657224 xfconf /usr/lib/i386-linux-gnu/xfce4/xfconf/xfconfd
1359204011 1349657224 lxpanel /usr/lib/i386-linux-gnu/lxpanel/plugins/monitors.so
1359204011 1349657225 policykit-1-gnome /usr/lib/policykit-1-gnome/polkit-gnome-authentication-agent-1
1359204011 1358559008 lxterminal /usr/bin/lxterminal
1359204011 1349664550 ttf-ubuntu-font-family /usr/share/fonts/truetype/ubuntu-font-family/Ubuntu-RI.ttf
1359204011 1349664535 pcmanfm /usr/bin/pcmanfm
1359204011 1349657224 lxpanel-indicator-applet-plugin /usr/lib/i386-linux-gnu/lxpanel/plugins/indicator.so
1359204011 1349657235 ttf-dejavu-core /usr/share/fonts/truetype/ttf-dejavu/DejaVuSansMono-Bold.ttf
1359204011 1349657210 lxsession /usr/bin/lxsession
1359204011 1349833422 update-notifier-common /usr/share/locale/en/LC_MESSAGES/update-notifier.mo
1359204011 1349664531 network-manager-gnome /usr/bin/nm-applet
1359204011 1349657205 zlib1g /lib/i386-linux-gnu/libz.so.1.2.7
1359204011 1352212906 xfce4-power-manager /usr/bin/xfce4-power-manager
1359204008 1349657221 libxfconf-0-2 /usr/lib/i386-linux-gnu/libxfconf-0.so.2.0.0
1359204008 1358215752 libnss3 /usr/lib/i386-linux-gnu/nss/libfreebl3.so
1359204008 1349657221 libvorbis0a /usr/lib/i386-linux-gnu/libvorbis.so.0.4.5
1359204008 1349657221 libvorbisenc2 /usr/lib/i386-linux-gnu/libvorbisenc.so.2.0.8
1359204008 1349657217 libxcursor1 /usr/lib/i386-linux-gnu/libXcursor.so.1.0.2
1359204008 1349657217 libx11-6 /usr/lib/i386-linux-gnu/libX11.so.6.3.0
1359204008 1349657221 libtasn1-3 /usr/lib/i386-linux-gnu/libtasn1.so.3.1.16
1359204008 1349657221 libwind0-heimdal /usr/lib/i386-linux-gnu/libwind.so.0.0.0

As duas primeiras colunas podem ser convertidas colando toda a saída em uma planilha. Usei o LibreOffice Calc para esse fim e inseri colunas em branco após cada coluna do "período da época". Em seguida, preenchi uma fórmula para converter "tempo da época" em tempo legível por humanos (e usando Formato, Células, Tempo para obter um formato adequado).

Para a primeira linha de dados, supondo que a primeira célula "época" esteja em A2, insira =(A2/86400)+25569B2 e preencha. Faça o mesmo pela segunda "época", usando =(C2/86400)+25569na célula D2.

O conteúdo, apenas algumas linhas, fica assim:

POPULARITY-CONTEST-0        TIME:1359204011     ID:ae1dc87f150c489082f0ddb28af40350 ARCH:i386
1359204011  26/01/2013 12:40:11 1349657211  08/10/2012 00:46:51 openbox /usr/bin/openbox
1359204011  26/01/2013 12:40:11 1349657211  08/10/2012 00:46:51 xscreensaver    /usr/bin/xscreensaver
1359204011  26/01/2013 12:40:11 1354294761  30/11/2012 16:59:21 perl-base   /usr/bin/perl
1359204011  26/01/2013 12:40:11 1349833421  10/10/2012 01:43:41 update-notifier /usr/bin/update-notifier
1359204011  26/01/2013 12:40:11 1349657224  08/10/2012 00:47:04 xfconf  /usr/lib/i386-linux-gnu/xfce4/xfconf/xfconfd
1359204011  26/01/2013 12:40:11 1349657224  08/10/2012 00:47:04 lxpanel /usr/lib/i386-linux-gnu/lxpanel/plugins/monitors.so
1359204011  26/01/2013 12:40:11 1349657225  08/10/2012 00:47:05 policykit-1-gnome   /usr/lib/policykit-1-gnome/polkit-gnome-authentication-agent-1
1359204011  26/01/2013 12:40:11 1358559008  19/01/2013 01:30:08 lxterminal  /usr/bin/lxterminal
1359204011  26/01/2013 12:40:11 1349664550  08/10/2012 02:49:10 ttf-ubuntu-font-family  /usr/share/fonts/truetype/ubuntu-font-family/Ubuntu-RI.ttf
1359204011  26/01/2013 12:40:11 1349664535  08/10/2012 02:48:55 pcmanfm /usr/bin/pcmanfm
1359204011  26/01/2013 12:40:11 1349657224  08/10/2012 00:47:04 lxpanel-indicator-applet-plugin /usr/lib/i386-linux-gnu/lxpanel/plugins/indicator.so
1359204011  26/01/2013 12:40:11 1349657235  08/10/2012 00:47:15 ttf-dejavu-core /usr/share/fonts/truetype/ttf-dejavu/DejaVuSansMono-Bold.ttf
1359204011  26/01/2013 12:40:11 1349657210  08/10/2012 00:46:50 lxsession   /usr/bin/lxsession
1359204011  26/01/2013 12:40:11 1349833422  10/10/2012 01:43:42 update-notifier-common  /usr/share/locale/en/LC_MESSAGES/update-notifier.mo
1359204011  26/01/2013 12:40:11 1349664531  08/10/2012 02:48:51 network-manager-gnome   /usr/bin/nm-applet
1359204011  26/01/2013 12:40:11 1349657205  08/10/2012 00:46:45 zlib1g  /lib/i386-linux-gnu/libz.so.1.2.7
1359204011  26/01/2013 12:40:11 1352212906  06/11/2012 14:41:46 xfce4-power-manager /usr/bin/xfce4-power-manager
1359204008  26/01/2013 12:40:08 1349657221  08/10/2012 00:47:01 libxfconf-0-2   /usr/lib/i386-linux-gnu/libxfconf-0.so.2.0.0
1359204008  26/01/2013 12:40:08 1358215752  15/01/2013 02:09:12 libnss3 /usr/lib/i386-linux-gnu/nss/libfreebl3.so
1359204008  26/01/2013 12:40:08 1349657221  08/10/2012 00:47:01 libvorbis0a /usr/lib/i386-linux-gnu/libvorbis.so.0.4.5
1359204008  26/01/2013 12:40:08 1349657221  08/10/2012 00:47:01 libvorbisenc2   /usr/lib/i386-linux-gnu/libvorbisenc.so.2.0.8
1359204008  26/01/2013 12:40:08 1349657217  08/10/2012 00:46:57 libxcursor1 /usr/lib/i386-linux-gnu/libXcursor.so.1.0.2
1359204008  26/01/2013 12:40:08 1349657217  08/10/2012 00:46:57 libx11-6    /usr/lib/i386-linux-gnu/libX11.so.6.3.0
1359204008  26/01/2013 12:40:08 1349657221  08/10/2012 00:47:01 libtasn1-3  /usr/lib/i386-linux-gnu/libtasn1.so.3.1.16
1359204008  26/01/2013 12:40:08 1349657221  08/10/2012 00:47:01 libwind0-heimdal    /usr/lib/i386-linux-gnu/libwind.so.0.0.0

Você pode ler mais em popcon.ubuntu.com, mas uma citação de lá está aqui:

P) Quais informações são relatadas pelo concurso de popularidade?

A) popularidade-contest reporta a arquitetura do sistema que você usa, a versão do popularidade-contest que você usa e a lista de pacotes instalados no seu sistema. Para cada pacote, o concurso de popularidade examina os arquivos usados ​​mais recentemente (com base no atime) e relata o nome do arquivo, seu último horário de acesso (atime) e o horário da última alteração (ctime). No entanto, alguns arquivos não são considerados porque possuem atime não confiável.

Você também pode executar man popularity-contestpara obter mais informações.


fonte
Oi Vasa1. Obrigado pela sua excelente resposta.Eu concordo com a sua resposta, mas preciso lidar com aplicativos que foram instalados a partir da fonte também.
rɑːdʒɑ
Ambos são ótimas respostas.
5133
então, se o concurso de popularidade indicar 0 0, é seguro assumir que o pacote nunca foi usado e que eu posso removê-lo enquanto meu padrão de uso não for alterado?
user1539216
16

Você pode usar o tempo de acesso para determinar quando um aplicativo foi usado pela última vez.

Por exemplo, tente:

ls -ltu /usr/bin | pager

Isso listará todos os arquivos /usr/binclassificados por hora de acesso (último acesso primeiro).

Se você deseja criar um script que encontre automaticamente programas com certas características, poderá usar statdesta maneira:

stat -c%X /bin/cat

Isso produzirá o tempo de acesso /bin/catcomo o número de segundos desde a época

Nota: obviamente, isso não funcionará se você estiver usando a noatimeopção de montagem.

Andrea Corbellini
fonte
Ambos são ótimas respostas.
5133
1

Meu disco ficou cheio, então usei a seguinte linha para encontrar todos os aplicativos que não foram usados ​​nos últimos 100 dias e cujo arquivo binário é maior que 1 MB:

find /usr/bin -size +1000k -atime +100 -exec ls -ltu {} \;
Erel Segal-Halevi
fonte