Apt-get autoremove tarafından seçilen paketleri içeren bir listeyi nasıl alabilirim?


13

Yalnızca seçilen paketlerin adını yazdıran herhangi bir komut var mı apt-get autoremove? Çekirdeği güncelleyen, eski çekirdeği ve gereksiz paketleri ( apt-get autoremove) kaldıran bir komut dosyası oluşturuyorum , ancak ekranda kaldırılacak paketlerin listesini yazdırmak istiyorum apt-get autoremove, bunu nasıl yapabilirim?


Sadece çalıştırmak için almak gerekir sudo apt-get autoremove -yve kaldırılması gereken her şeyi otomatik olarak kaldırmak gerekir ...

Burada okumaya çalışın, [Bu yardımcı olabilir.] [1] [1]: serverfault.com/questions/433250/…
Doug

Bunları kaldırmadan paket listesini almak için aslında yapabilirsinizsudo apt-get --dry-run autoremove
heemayl

Komutun tüm çıktısını değil, sadece paketlerin adını almak istiyorum ....
Afonso Sousa

Yanıtlar:


13

Yana Yorumunuza göre kaldırılmasını olacak sadece paketler listeye istiyorum:

apt-get --dry-run autoremove | grep -Po '^Remv \K[^ ]+'

grep komut dökümü:

  • -P: Verilen deseni PCRE (Perl Uyumlu Normal İfade) deseni olarak yorumlar
  • -o: Satırın tamamı yerine yalnızca eşleşen dizeyi yazdırır

Normal ifade dökümü:

  • ^: satırın başlangıcıyla eşleşir
  • Remv: bir Remvdizeyle eşleşir
  • \K: önceden eşleşen alt dizeyi eşleşen dizeden hariç tutar
  • [^ ]+: bir veya daha fazla karakterle eşleşmiyor
$ apt-get --dry-run autoremove | grep -Po 'Remv \K[^ ]+'
libapache2-mod-php5
php5-readline
php5-cli
libonig2
libqdbm14
php5-json
php5-common 

1
@GeekLynxAfonso, sen kullanımına gerek yoktur sudoile --dry-runseçeneği.
jarno

@jarno Mantıklı, muhtemelen gerekmediği gerçeği bana olmadı. Thanks
kos

2

Aslında, yalnızca cihazınızın çıktısını

sudo apt-get autoremove --dry-run 

Komut.

Örneğin bunu

sudo apt-get autoremove --dry-run  | head -n 5 | tail -n 1

Komutunuz da çalışıyor !! Ama ben kos'un emrini tercih ediyorum ... Ama aynı şekilde teşekkürler !! :)
Afonso Sousa
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.