Wie suche ich über die Befehlszeile nach verfügbaren Paketen?


584

Ich habe einige Pakete mit der Befehlszeile 'sudo apt-get install ...' erfolgreich installiert, wenn ich im Voraus wusste, dass diese Pakete verfügbar sind. Aber wie kann ich suchen oder eine Liste der in den Repositorys verfügbaren Elemente abrufen?

Antworten:


728

So suchen Sie nach einem bestimmten Paket nach Name oder Beschreibung:

Verwenden Sie in der Befehlszeile:

apt-cache search keyword

Dabei kann das Suchwort ganz oder teilweise aus einem Paketnamen oder beliebigen Wörtern bestehen, die in seiner Beschreibung verwendet werden.

Beinhaltet beispielsweise apt-cache search proxydie folgenden beiden Pakete:

winziger Proxy - Ein einfacher, nicht zwischengespeicherter, optional anonymisierender HTTP-Proxy
tircd - ircd- Proxy für die Twitter-API

Hinweis: Die Liste kann lang sein, daher können Sie die Ausgabe lessso weiterleiten, dass sie zeilenweise oder bildschirmweise gescrollt werden kann apt-cache search something | less.

Um eine Liste aller Pakete zu erhalten

apt-cache search .

Verwenden Sie Synaptic, wenn Sie die X-Weiterleitung aktiviert haben oder sich auf einem Desktop befinden

Synaptic ist häufig eine bequemere Methode, erfordert jedoch mindestens einen X-Server an Ihrem Ende (es sei denn, Sie betreiben eine Desktop-Umgebung). sudo apt-get install synapticBei Bedarf mit installieren .

  • Synaptic auf ssh'd Server via X Forwarding:

    Bildbeschreibung hier eingeben

  • Synaptic läuft lokal auf Ubuntu Desktop:

    Bildbeschreibung hier eingeben


@ MarkThomas Versuchen Sie apt-cache policyauch, es gibt Ihnen mehr Informationen über die Quellen.
yclian

wie apt-getkann man einfach laufen apt-cacheohne Argumente und die kurzen Hilfe / Spickzettel Informationen erhalten. Sie können jederzeit die Hilfeseiten lesen, um eine längere Hilfe zu erhalten. (ie man apt-cache)
pd12

Angenommen, ich bin so dumm, die Ergebnisse leben zu wollen apt install, gibt es eine clevere Möglichkeit, das zu tun? Die Ausgabe dieser Funktion ist chaotisch. Man könnte das erste Wort aus jeder Zeile verwenden, aber es sollte einen einfacheren Weg geben.
Deleet

Sie können auch online suchen. packages.ubuntu.com
Activedecay

Wenn Sie nur die Namen aller verfügbaren Pakete benötigen, tun apt-cache pkgnames
Sie

42

Unter Verwendung aptitude, apt-cacheund aptalle die Ausgabe unterschiedlich formatiert werden . (Keines von diesen erfordert die Verwendung von, sudowenn nach einem Paket gesucht wird.) Ich bevorzuge die Verwendung aptfür die Lesbarkeit. Es hebt den Paketnamen hervor und fügt ein Leerzeichen zwischen den verschiedenen Paketen ein. [installed]Neben jedem bereits installierten Paket ist eine Liste aufgeführt. Verwendungszweck:

apt search package-name

2
Wenn ich "$ apt search firefox" sage, werden Tonnen von Ausgabeergebnissen erzeugt :(
user3804598

Sie könnten Ihre Suche apt search firefox | grep -A 3 firefox
eingrenzen

1
Eine weitere Option, um die Suche apt search ^firefoxapt search ^firefox$
einzugrenzen

25

Sie können aptitude auch über die Befehlszeile verwenden:

aptitude search xxxxxx

2
Das nervige an diesem ist, dass Ubuntu es Ihnen nicht standardmäßig zu geben scheint. Bis ich davon erfuhr apt-cache, musste ich dies immer apt-get install aptitudeauf jeder neuen Box tun, die ich installiert hatte. Da ich jedoch keinen Weg finde, um apt-cachemir zu zeigen, ob es installiert ist, muss ich das wohl noch ein bisschen machen :-)

2
@paxdiablo Erstelle einfach ein zweizeiliges Shell-Skript (zweite Zeile wie dpkg --list | grep "$1") oder füge diesem Effekt eine Shell-Funktion in dein .bash_login... :-)
FooF

5

Das Befehlszeilentool apt-cache wird zum Durchsuchen des apt-Softwarepaket-Cache verwendet. In einfachen Worten, dieses Tool wird verwendet, um Softwarepakete zu durchsuchen, Informationen zu Paketen zu sammeln und nach verfügbaren Paketen zu suchen, die für die Installation auf Debian- oder Ubuntu-basierten Systemen bereit sind.

Um den Paketnamen und dessen Beschreibung vor der Installation herauszufinden, verwenden Sie das Flag 'search'. Wenn Sie "Suche" mit apt-cache verwenden, wird eine Liste der übereinstimmenden Pakete mit einer kurzen Beschreibung angezeigt. Angenommen, Sie möchten die Beschreibung des Pakets 'vsftpd' herausfinden, dann lautet der Befehl.

Syntax:

apt-cache search SearchTerm
$ apt-cache search vsftpd

Die mögliche Ausgabe wäre:

vsftpd - lightweight, efficient FTP server written for security
ccze - A robust, modular log coloriser
ftpd - File Transfer Protocol (FTP) server
yasat - simple stupid audit tool

Um alle Pakete zu finden und aufzulisten, die mit 'vsftpd' beginnen, können Sie den folgenden Befehl verwenden.

$ apt-cache pkgnames vsftpd

Möglicherweise möchten Sie die Ergebnisse auch mit more oder sogar grep ausführen. Zum Beispiel:

apt-cache search firefox | grep plugin

3

Angenommen, Sie möchten all dies vom Terminal aus erledigen, verwenden Sie Folgendes:

Zuerst empfehle ich Ihnen, die Paketindexdateien zu aktualisieren, damit die Liste aller Dateien im Repository, die Sie erstellen möchten, auf dem neuesten Stand ist

sudo apt-get update

Verwenden Sie dann die Funktion "Regex suchen ", apt-cachewobei "Regex" für regulären Ausdruck steht und das Suchmuster ist. Für weitere Informationen zu Suchmustern können Sie manuelles Regex (7) per Befehl man 7 regexoder in Englisch nachschlagen . Eine Regex- Variable gleich . wird genügen.

apt-cache search .

Mit den obigen Angaben erhalten Sie ALLE Ergebnisse, aber es ist nicht in beliebiger Reihenfolge, die für das Surfen besonders hilfreich ist.

So können wir schließlich nach Wörterbuchreihenfolge sortieren sort -dund jeweils nur eine Seite anzeigen less.

apt-cache search . |sort -d |less
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.