en utilisant la recherche apt-cache

9

J'apprends à utiliser apt. Quand je fais un apt-cache search git pour voir tous les paquets correspondant à git, je vois un tas de paquets dont les descriptions n'ont rien à voir avec git. Pourquoi est-ce ainsi et Comment puis-je le réparer? (Ubuntu 12.04.2 LTS).

Aussi, pourquoi la fonctionnalité de recherche est-elle trouvée dans une commande qui a "cache" dans son nom? Qu'est-ce que la fonctionnalité de recherche avoir à faire avec les caches?

Merci.

    
posée Jason Posit 22.05.2013 - 08:07
la source

3 réponses

11

Si vous souhaitez uniquement effectuer une recherche par nom, utilisez l’argument --names-only . Pour plus d'informations, lisez le man apt-cache , ce serait utile.

    
réponse donnée ssoto 22.05.2013 - 08:46
la source
6

Lorsque vous exécutez une commande apt-cache search <package name> , vous effectuez une requête sur les informations stockées sur votre ordinateur local pour les packages disponibles. Ceci est le cache de vos référentiels "abonnés". En d'autres termes, la commande effectue une requête sur les référentiels que vous avez configurés dans USC (Ubuntu Software Center) ou Synaptic.

Selon la page de manuel apt-cache , /etc/apt/sources.list est l'emplacement où récupérer les informations dans la requête. Il existe deux autres emplacements pour d'autres types d'informations sur les packages. Voir man apt-cache pour plus de détails.

Essentiellement, exécuter apt-cache search git renverra toutes les instances des paquets disponibles contenant la séquence de mots "git" dans le nom du paquet, ainsi que dans la description du paquet.

Par exemple, cela signifie que tous les paquets pouvant contenir la séquence de mots "git", comme le mot "di git al", seront également renvoyés dans leur description. S'il vous plaît noter le gras dans la phrase précédente.

Si vous êtes uniquement intéressé par les packages qui concernent spécifiquement git - le gestionnaire de contrôle de source, vous devrez restreindre votre requête à l’utilisation d’une expression régulière afin de rendre les résultats de la recherche plus restrictifs.

Par exemple:

sudo apt-cache search ^git$

retournera des résultats qui ne contiennent explicitement que la phrase "git" dans le nom du paquet.

Par exemple:

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

La commande: sudo apt-cache search ^git

retournera des résultats pour les paquets qui commencent par la phrase "git":

Par exemple:

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)
...

Cela dit, vous devrez régler vos requêtes sur le cache de paquets pour les rendre plus spécifiques. J'espère que ça aide.

    
réponse donnée Kevin Bowen 22.05.2013 - 08:47
la source
0

Ceci est une réponse indirecte à votre question mais toujours liée à celle-ci car elle concerne la gestion des paquets. J'utilise personnellement aptitude au lieu d'apt-get. aptitude est le synaptique équivalent au terminal.

Pour rechercher,

sudo aptitude search $keyword

Autres commandes

sudo aptitude install
sudo aptitude update
sudo aptitude upgrade

Pour installer aptitude,

sudo apt-get install aptitude
    
réponse donnée llt 22.05.2013 - 09:43
la source

Lire d'autres questions sur les étiquettes