Jak mogę wyświetlić listę nieużywanych aplikacji?

25

Hej, czy istnieje możliwość wylistowania wszystkich aplikacji z warunkiem nieużywania przez 10-20 dni. Jeśli tak, jak mogę to zrobić.

Dziękuję Ci.

rɑːdʒɑ
źródło

Odpowiedzi:

22

Najbliższe, o czym myślę, to bieg popularity-contest > out.txt które potrwa chwilę, aby wygenerować plik out.txt, z listą programów, od ostatnio używanych do ostatnio używanych. Mam wrażenie, że ...

  • Pierwsza kolumna to ostatni czas (format epoki), w którym program był używany, a kolejna kolumna to czas jego pierwszego użycia (lub zainstalowania?).
  • Myślę, że jedynymi wymienionymi programami są programy zarejestrowane (w wyniku instalacji za pośrednictwem apt-getlub Centrum oprogramowania). Tych, których nie ma, nie ma na liście. Na przykład zainstalowałem Seamonkey, dekompresując plik tar.gz. To nie pokazuje.

Wynik działania popularity-contestwygląda następująco:

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

Dwie pierwsze kolumny można przekonwertować, wklejając cały wynik do arkusza kalkulacyjnego. Użyłem do tego celu LibreOffice Calc i wstawiłem puste kolumny po każdej kolumnie „epoki”. Następnie wypełniłem formułę przekształcającą „epokę” w czas czytelny dla człowieka (i używając Format, Komórki, Czas, aby uzyskać odpowiedni format).

Dla pierwszego wiersza danych, zakładając, że pierwsza komórka „epoki” znajduje się w A2, wstaw =(A2/86400)+25569 w B2 i wypełnij. Zrób to samo dla drugiego „czasu epoki”, używając =(C2/86400)+25569komórki D2.

Treść, zaledwie kilka wierszy, wygląda następująco:

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

Możesz przeczytać więcej na popcon.ubuntu.com, ale cytat z tego miejsca jest tutaj:

P) Jakie informacje są zgłaszane w konkursie popularności?

A) konkurs popularności informuje o używanej architekturze systemu, używanej wersji konkursu popularności i liście pakietów zainstalowanych w systemie. W przypadku każdego pakietu konkurs popularności analizuje ostatnio używane pliki (na podstawie atime) i zgłasza nazwę pliku, czas ostatniego dostępu (atime) i czas ostatniej zmiany (ctime). Jednak niektóre pliki nie są brane pod uwagę, ponieważ mają niewiarygodne atime.

Możesz także uruchomić, man popularity-contestaby uzyskać więcej informacji.


źródło
Cześć Vasa1. Dziękuję za wspaniałą odpowiedź. Zgadzam się z twoją odpowiedzią, ale muszę poradzić sobie z aplikacjami, które również zostały zainstalowane ze źródła.
rɑːdʒɑ
Oba są świetnymi odpowiedziami.
rɑːdʒɑ
więc jeśli konkurs popularności mówi mi 0 0, czy można bezpiecznie założyć, że pakiet nigdy nie był używany i że mogę go usunąć, dopóki mój schemat użytkowania się nie zmieni?
użytkownik1539216
16

Czas dostępu można wykorzystać do ustalenia, kiedy aplikacja była ostatnio używana.

Na przykład spróbuj:

ls -ltu /usr/bin | pager

Spowoduje to wyświetlenie listy wszystkich plików /usr/binposortowanych według czasu dostępu (ostatni dostęp jako pierwszy).

Jeśli chcesz utworzyć skrypt, który automatycznie znajdzie programy o określonych cechach, możesz użyć statw następujący sposób:

stat -c%X /bin/cat

Spowoduje to wyświetlenie czasu dostępu /bin/catjako liczby sekund od Epoki

Uwaga: oczywiście to nie zadziała, jeśli używasz noatimeopcji montowania.

Andrea Corbellini
źródło
Oba są świetnymi odpowiedziami.
rɑːdʒɑ
1

Mój dysk się zapełnił, więc użyłem następującego wiersza, aby znaleźć wszystkie aplikacje, które nie były używane w ciągu ostatnich 100 dni i których plik binarny jest większy niż 1 MB:

find /usr/bin -size +1000k -atime +100 -exec ls -ltu {} \;
Erel Segal-Halevi
źródło