it-swarm.com.de

mit Apt-Cache-Suche

Ich lerne, wie man Apt benutzt. Wenn ich einen apt-cache search git mache, um alle Pakete zu sehen, die zu git passen, sehe ich eine Reihe von Paketen, deren Beschreibungen nichts mit git zu tun haben. Warum ist das so und wie kann ich das beheben? (Ubuntu 12.04.2 LTS).

Warum wird die Suchfunktion auch in einem Befehl gefunden, dessen Name "cache" enthält? Was hat die Suchfunktion mit Caches zu tun?

Vielen Dank.

10
Jason Posit

Wenn Sie nur nach Namen suchen möchten, verwenden Sie das Argument --names-only. Lesen Sie für weitere Informationen den man apt-cache, es wäre nützlich.

12
ssoto

Wenn Sie den Befehl apt-cache search <package name> ausführen, werden die auf Ihrem lokalen Computer gespeicherten Informationen zu verfügbaren Paketen abgefragt. Dies ist der Cache aus Ihren "abonnierten" Repositorys. Das heißt, der Befehl führt eine Abfrage für die Repositorys aus, die Sie in USC (Ubuntu Software Center) oder Synaptic eingerichtet haben.

Gemäß der Manpage apt-cache ist /etc/apt/sources.list der Speicherort, von dem Informationen in der Abfrage abgerufen werden. Es gibt einige zusätzliche Speicherorte für andere Arten von Paketinformationen. Siehe man apt-cache für weitere Einzelheiten.

Wenn Sie apt-cache search git ausführen, werden im Wesentlichen alle Instanzen verfügbarer Pakete zurückgegeben, die die Wortsequenz "git" im Paketnamen sowie in der Paketbeschreibung enthalten.

Dies bedeutet zum Beispiel, dass jedes Paket, das die Wortsequenz "git" enthält, wie das Wort "di"git", in seiner Beschreibung wird auch als Ergebnis zurückgegeben. Bitte beachten Sie das Fett im vorherigen Satz.

Wenn Sie nur an Paketen interessiert sind, die sich speziell mit git - dem Quellcodeverwaltungsmanager - befassen, müssen Sie Ihre Abfrage auf die Verwendung eines regulären Ausdrucks beschränken, um die Suchergebnisse restriktiver zu gestalten.

Zum Beispiel:

Sudo apt-cache search ^git$

gibt Ergebnisse zurück, die explizit nur den Ausdruck "git" im Paketnamen enthalten.

Zum Beispiel:

Sudo apt-cache search ^git$
git - fast, scalable, distributed revision control system

Der Befehl: Sudo apt-cache search ^git

liefert Ergebnisse für Pakete, die mit der Phrase "git" beginnen:

Zum Beispiel:

Sudo apt-cache search ^git
git - fast, scalable, distributed revision control system
git-core - fast, scalable, distributed revision control system (obsolete)
git-doc - fast, scalable, distributed revision control system (documentation)
git-man - fast, scalable, distributed revision control system (manual pages)
gitk - fast, scalable, distributed revision control system (revision tree visualizer)
easygit - git for mere mortals
gforge-plugin-scmgit - Git plugin for FusionForge (transitional package)
git-all - fast, scalable, distributed revision control system (all subpackages)
git-annex - manage files with git, without checking their contents into git
git-Arch - fast, scalable, distributed revision control system (Arch interoperability)
...

Das heißt, Sie müssen Ihre Abfragen im Paket-Cache optimieren, um sie spezifischer auf Ihr Interesse abzustimmen. Hoffe das hilft.

6
Kevin Bowen

Dies ist eine indirekte Antwort auf Ihre Frage, die sich jedoch immer noch darauf bezieht, da es um die Paketverwaltung geht. Ich persönlich benutze aptitude anstelle von apt-get. Eignung ist das synaptische Äquivalent zum Terminal.

Suchen,

Sudo aptitude search $keyword

Andere Befehle

Sudo aptitude install
Sudo aptitude update
Sudo aptitude upgrade

So installieren Sie aptitude:

Sudo apt-get install aptitude
0
llt

Installieren Sie apt-xapian-index und verwenden Sie bei der Suche anstelle von apt-cache die Axi-Cache-Suche. Sie erhalten viel bessere Ergebnisse

0
zaonline