Kod İçeriği :
Kod: Tümünü seç
#!/bin/bash
# Kaldırılan Paketlerin Listesi ve Toplam Boyutunu Göster
echo "-------------------------------------"
echo "Kaldırılan Paketlerin Listesi ve Toplam Boyutu:"
# Kaldırılan Paketlerin Tarih ve Adlarını Al
kaldirilan_paketler=$(grep -B 1 "apt-get -u --purge remove" /var/log/apt/history.log | grep -E "Start-Date|Commandline" | awk 'BEGIN {FS="\n"} {if ($1 == "Start-Date:") {t=$2} else {print t " = " $0}}' | sed 's/Commandline: apt-get -u --purge remove //g' | sed 's/Start-Date: //g' | awk 'NR%2==1{date=$0} NR%2==0{print date " = " $0 " (kaldırıldı)"}' | sed 's/^ = //')
# Kaldırılan Paketlerin Tarih ve İsimlerini Göster
echo "Kaldırılan Paketler ve Tarihler (Format: dd/mm/yyyy - hh:mm:ss):"
echo "$kaldirilan_paketler"
# Kaldırılan Paketlerin Toplam Boyutunu Hesapla
toplam_kaldirilan_boyut=0
# Kaldırılan Paketlerin Boyutunu Hesapla
for paket in $(echo "$kaldirilan_paketler" | awk '{for(i=3;i<=NF;i++) print $i}'); do
paket_boyutu=$(dpkg-query -W --showformat='${Installed-Size}\n' $paket 2>/dev/null)
if [ ! -z "$paket_boyutu" ]; then
toplam_kaldirilan_boyut=$((toplam_kaldirilan_boyut + paket_boyutu))
fi
done
# Boyutu MB cinsinden hesapla
toplam_kaldirilan_boyut_mb=$(echo "scale=2; $toplam_kaldirilan_boyut/1024" | bc)
# Kaldırılan paketlerin sayısını ve boyutunu yazdır
echo "Toplam Kaldırılan Boyut: ${toplam_kaldirilan_boyut_mb} MB"
Bu bash betiği, sistemde kaldırılan paketlerin listesini ve toplam boyutunu gösterir. Betik, /var/log/apt/history.log dosyasını kullanarak kaldırılan paketlerin tarihlerini ve isimlerini alır, ardından her bir paketin boyutunu hesaplayarak toplam boyutu MB cinsinden gösterir.
Betiğin işleyişi hakkında daha fazla bilgi:
Betiğin İşleyişi
1.Başlık ve Açıklama:
Betik, kullanıcıya kaldırılan paketlerin listesini ve toplam boyutunu göstereceğini belirtir.
2.Kaldırılan Paketlerin "Paket Bilgilerinin" Alınması:
grep komutları kullanılarak /var/log/apt/history.log dosyasından kaldırılan paketlerin tarihleri ve isimleri alınır.awk ve sed komutları ile veriler işlenir ve formatlanır.
3.Kaldırılan Paketlerin Gösterimi:
Kaldırılan paketlerin tarihleri ve isimleri ekrana yazdırılır.
4.Toplam Boyutun Hesaplanması:
Her bir kaldırılan paket için dpkg-query komutu kullanılarak kurulu boyutları alınır.Bu boyutlar toplanarak toplam boyut hesaplanır.
5.Sonuçların Gösterimi:
Toplam kaldırılan boyut, MB cinsinden hesaplanır ve ekrana yazdırılır.
Kullanım
Bu betiği çalıştırmak için bir terminal açın ve betiği bir dosyaya kaydedin (örneğin paket_kaldırma.sh). Ardından, dosyaya çalıştırma izni verin ve çalıştırın:
Kod: Tümünü seç
chmod +x paket_kaldırma.sh
Kod: Tümünü seç
./paket_kaldırma.sh
1.Betik, yalnızca apt ile kaldırılan paketleri işler. Diğer paket yöneticileri (örneğin dpkg veya snap) ile kaldırılan paketler bu betikte yer almaz.
2./var/log/apt/history.log dosyasının mevcut olması ve yeterli izinlere sahip olmanız gerekir.
3.Betik, kaldırılan paketlerin boyutunu hesaplamak için dpkg-query komutunu kullanır, bu nedenle sistemde bu komutun çalışabilir olması gerekir.
Bu betik, sistem yöneticileri veya kullanıcılar için yararlı bir betik olup kendi özel ihtiyacımdan doğmuştur, özellikle sistemdeki gereksiz paketleri temizlemek ve disk alanını yönetmek için.
ÖRNEK KOMUT ÇIKTISI :
Kod: Tümünü seç
-------------------------------------
Kaldırılan Paketlerin Listesi ve Toplam Boyutu:
Kaldırılan Paketler ve Tarihler (Format: dd/mm/yyyy - hh:mm:ss):
01/10/2023 - 14:30:00 = apache2 (kaldırıldı)
01/10/2023 - 14:30:00 = mysql-server (kaldırıldı)
01/10/2023 - 14:30:00 = php (kaldırıldı)
01/10/2023 - 14:30:00 = libapache2-mod-php (kaldırıldı)
02/10/2023 - 09:15:00 = nginx (kaldırıldı)
02/10/2023 - 09:15:00 = php-fpm (kaldırıldı)
02/10/2023 - 09:15:00 = postgresql (kaldırıldı)
02/10/2023 - 09:15:00 = redis-server (kaldırıldı)
03/10/2023 - 11:00:00 = git (kaldırıldı)
03/10/2023 - 11:00:00 = vim (kaldırıldı)
03/10/2023 - 11:00:00 = curl (kaldırıldı)
03/10/2023 - 11:00:00 = wget (kaldırıldı)
04/10/2023 - 16:45:00 = docker.io (kaldırıldı)
04/10/2023 - 16:45:00 = docker-compose (kaldırıldı)
04/10/2023 - 16:45:00 = python3 (kaldırıldı)
04/10/2023 - 16:45:00 = python3-pip (kaldırıldı)
Toplam Kaldırılan Boyut: 45.32 MB
Açıklama
Kaldırılan Paketler ve Tarihler: Bu bölümde, her bir kaldırılan paketin kaldırıldığı tarih ve saat ile birlikte paketin adı gösterilmektedir. Örnek olarak, apache2, mysql-server, nginx, git, docker.io gibi popüler paketler yer almaktadır.
Toplam Kaldırılan Boyut: Bu kısımda, kaldırılan paketlerin toplam boyutu MB cinsinden hesaplanarak ekrana yazdırılmaktadır.
Güle güle kullanın....