Var, ancak tetiklenen paketler için bazı bash komut dosyalarını kazmayı gerektirir.
dpkg
Çıktının aşağıdaki gibi olduğunu varsayalım :
Zim 0.52-1'i değiştirmeye hazırlanma (... / archives / zim_0.52-1_all.deb kullanılarak) ...
Yedek zim ambalajından çıkarılıyor ...
Paylaşılan mime-info için tetikleyiciler işleniyor ...
Menü için tetikleyiciler işleniyor ...
Dahili olarak, bu paketlerin her biri için komut satırı seçeneği ve sıfır veya daha fazla tetikleme seçeneği ile komut dosyası dpkg
çağırmaktır .postinst
triggered
- Yani, sadece açık
/var/lib/dpkg/info/PACKAGE.postinst
(bir betik görüyorsunuz) ve sadece ne olur bakmak $1
olduğunutriggered
Örnek: man-db
tetikleyiciler
Gördüğünüz en yaygın "İşleme tetikleyicilerinden" biri man-db
, yüklenen pakette bir man sayfası olduğunda.
Açarsanız /var/lib/dpkg/info/man-db.postinst
, bu bölümü bulacaksınız:
["$ 1" = tetiklendi]; sonra
# Burada dpkg'ın söylediği gibi bir durum mesajı yazdırmıyoruz
# "Man-db için tetikleyiciler işleniyor ...".
run_mandb -pq
çıkış 0
fi
Böylece Processing triggers for man-db ...
, run_mandb
işlevin ( postinst
komut dosyasında da bulunur ) -pq
seçenekle çalıştırılmasını sağlar .
Yardımcı Kaynaklar:
- DPkg tetikleyicileri daha kullanışlı ve daha az acı verici hale getirmeye çalışmak
- dpkg tetiklenir, kayıp nasıl yapılır belgesi