Ich verwende Ubuntu und habe eine Deb-Datei installiert. Ich habe bereits Deb-Pakete erstellt, daher weiß ich, dass es ein Debian-Changelog (Debchange) gibt. Gibt es überhaupt das Debian-Changelog für ein Paket, das ich installiert habe? Angenommen, ich habe keinen Zugriff auf die Deb-Quelldatei für dieses Paket und die Deb-Datei ist nicht verfügbar. Ich kann bei Bedarf zusätzliche Pakete installieren.
19
apt-get
installierte Pakete zu sehen:apt-get changelog <package>
apt-get
hat keinen solchen Befehl.apt-get changelog apt | grep -C5 'apt-get changelog'
Zeigt an, dass dieser Befehl inapt (0.8.9ubuntu1) natty
(2010) eingeführt wurde. Sie können die Quelle erhalten (es ist immerhin Open-Source): Führenapt-get source apt
Sie diecmdline/apt-get.cc
Datei aus, suchen Sie sie und schauen Sie sich dieDoChangelog()
Funktion an (übrigens, schauen Sie sich dieDoMoo()
Funktion an).Antworten:
Wenn sich die Deb ebenfalls im Repository befindet und Sie ältere Versionen von Changelog kennenlernen möchten, können Sie auch
apt-get changelog package
das gesamte Changelog lesen. Zum Beispiel für openssl:quelle
apt-listchanges
ist ein nettes Paket, das man haben sollte, aber ohne eine Deb-Datei zu haben, ist es höchstwahrscheinlich, das Debian-Changelog von /usr/share/doc/somepackage/changelog.Debian.gz zu lesen .Erstellen Sie eine Shell-Funktion mit:
quelle
debchange
handelt es sich tatsächlich um ein vorhandenes Tool in Devscripts, das zum Erstellen von Changelog-Einträgen verwendet wird. Daher würde ich dringend empfehlen, einen anderen Namen zu wählen. Auch$0
wird wahrscheinlich nicht das tun, was Sie erwarten. In meinem Fall wird es immer ausgeführtzless /usr/share/doc/bash/changelog.Debian.gz
. Ersetzen Sie in Ihrem Fall durchbash
den Namen der Shell oder des Skripts, von der aus Sie es ausführen.Um die Antwort von Janne Pikkarainen zu erweitern , hier ein Alias, mit dem das changelog.Debian.gz für ein bestimmtes Paket gelesen werden kann:
Es kann so verwendet werden:
Bitte beachten Sie jedoch, dass dies eine schrecklich hackige Lösung ist und unter den meisten Umständen nicht empfohlen wird. Eine Funktion oder ein eigenständiges Skript ist eine viel bessere Lösung.
Hier ist eine Funktion, die alle verfügbaren Änderungsprotokolle für PACKAGE liest:
Hier ist eine Funktion, die eine Liste aller verfügbaren Änderungsprotokolle für PACKAGE druckt und den Benutzer auffordert, das zu lesende zu wählen:
quelle