In Synaptic kann man Pakete nach Abschnitten auflisten. Im Bild unten sind beispielsweise alle Pakete des Abschnitts "Amateurfunk (Universum)" aufgelistet.
Wie kann ich eine solche Liste (edit: with package description) in der Kommandozeile bekommen?
Ich brauche eine rohe Liste. eine Terminalanwendung wie aptitude
geht nicht.
command-line
package-management
synaptic
Serge Stroobandt
quelle
quelle
Antworten:
Nun, obwohl Sie sagen, dass Sie aptitude wegen der Ausgabe nicht verwenden möchten, müssen Sie wissen, dass Sie es modifizieren können, um das zu bekommen, was Ihnen gefällt:
Der Trick liegt in dem
-F
Schalter, der das Ausgabeformat ändert.%p
bedeutet Paket. Dies wird auch ausgegeben, wenn das Paket verschiedene Architekturen hat (dh amd64 vs i386) und%d
die Beschreibung ausgibt. Sie können das Suchmuster noch weiter personalisieren, um beispielsweise nicht installierte Pakete zu finden:wo
~i
Mittel installiert und das!
ist ein nicht, so dass es als „nicht installiert (~ i) (!)“ liest, oder wenn Sie nur die , die wollen, die für Ihre Architektur verfügbar sind:~r
Sein,?architecture()
das mit der Architektur des Pakets übereinstimmt undnative
nur diejenigen auflistet, die dieselbe Architektur wie das System haben, das Äquivalent zudpkg --print-architecture
.Die vorherige Zeile kann daher noch prägnanter geschrieben werden als:
quelle
-F'|%p|%d|'
. Ist es jedoch möglich, die:i386
Pakete nicht!
aufzulisten, indem dersearch
Zeichenfolge ein Ausdruck hinzugefügt wird ?~r native
zu den Suchbegriffen hinzufügen .~r
wobei,?architecture
welche der Architektur des Pakets entsprechen undnative
welche nur diejenigen auflisten, die dieselbe Architektur wie das System haben, das Äquivalent zudpkg --print-architecture
. Übrigens, Sie wollten die Liste mit der Paketbeschreibung?aptitude-doc
Paket installieren und/usr/share/doc/aptitude/html/en/index.html
mit Ihrem Browser zu navigieren, finden Sie infile:///usr/share/doc/aptitude/html/en/ch02s04s05.html
allen bösen Vergünstigungen.Stellen Sie sicher, dass das Paket dctrl-tools installiert ist. Es bietet nützliche Befehle zum Durchsuchen der Paketlisten apt und dpkg. Um eine vollständige Beschreibung aller Pakete aus einem bestimmten Abschnitt zu erhalten, die mit apt installiert werden können, führen Sie Folgendes aus
Dadurch werden die vollständigen Paketmetadaten für jedes Paket in diesem
hamradio
Abschnitt angezeigt. Wenn Sie nur die Paketnamen sehen möchten, führen Sie den Befehl ausWenn Ihr System für Multiarch eingerichtet ist, wird dasselbe Paket in dieser Auflistung möglicherweise mehrmals angezeigt, wenn es für mehr als eine Architektur erstellt wurde. Um dies weiter zu verfeinern, verwenden Sie entweder
oder
um die Paketliste zu sortieren und doppelte Pakete mit demselben Namen zu entfernen.
Beachten Sie, dass Sie den tatsächlichen Namen des Abschnitts verwenden müssen, der sich vom "lesbaren" Namen unterscheidet, den Synaptic in seiner Benutzeroberfläche anzeigt. Bei den obigen Suchen wird beispielsweise der Abschnittsname
hamradio
anstelle der in Synaptic angezeigten Zeichenfolge "Amateurfunk" verwendet.In der Manpage für grep-aptavail finden Sie eine vollständige Beschreibung aller Optionen und einige Beispiele.
quelle
Weitere Felder in einer Zeile mit beliebigem Trennzeichen
Der folgende Einzeiler gibt alle eindeutigen Paketnamen eines Repository-Abschnitts zusammen mit ihrer Beschreibung in einer einzelnen Zeile aus. Alle Felder sind durch ein Pipe-Zeichen getrennt, dh bereit zur Umwandlung in eine Markdown-Pipe-Tabelle . Die resultierende Tabelle kann auf meiner Web site gefunden werden.
quelle
Mit dem folgenden Befehl können Sie eine Liste der Pakete abrufen, die zu einem bestimmten Abschnitt gehören:
quelle