Motifs de recherche

Quand vous recherchez un paquet ou restreignez l'affichage dans aptitude, la chaîne que vous entrez est appelée « motif de recherche ». Bien que l'utilisation première des motifs de recherche soit de chercher le nom exact des paquets, aptitude permet de créer des recherches bien plus élaborées. En plus de l'interface visuelle, des opérations en ligne de commandes peuvent aussi utiliser des motifs de recherche ; consultez Command-Line Reference pour plus de détails.

Un motif de recherche consiste en une ou plusieurs conditions (parfois appelées « mots »). Un paquet correspond à un motif s'il correspond à tous ses mots. Les mots commencent généralement par le caractère tilde (« ~ ») suivi par un caractère indiquant le type de mot, puis par tout texte supplémentaire nécessaire au mot.

Par défaut, les motifs sont mis en correspondance avec toutes les versions des paquets. Néanmoins, certains motifs restreignent les versions testées. Par exemple, le motif ~D prend un autre motif en paramètre et entre en correspondance avec tout paquet qui dépend d'un autre paquet correspondant à ce motif. Dans ce cas, seules les versions des paquets qui satisfont la dépendance seront testées. Les versions utilisées pour une correspondance de recherche ne changeront que dans les motifs de recherche qui ont un sous-mot (comme ~D).

La plupart des recherches textuelles (de noms de paquets, descriptions, etc.) sont réalisées en utilisant des expressions rationnelles où la casse des lettres ne compte pas. Cela signifie que vous devez protéger par une barre oblique inverse (« backslash ») les caractères spéciaux des expressions rationnelles[11] dans vos recherches. Par exemple, pour rechercher « g++ », vous devrez utiliser le motif « g\+\+ ».

Normalement, les « espaces » (c'est-à-dire le caractère espace, les tabulations, etc.) séparent les mots mais sont, sinon, ignorés par aptitude. Pour inclure des espaces (ou tout autre caractère spécial) dans un motif, vous pouvez soit le faire précéder d'un tilde (comme dans Debian~ Project), soit l'entourer de guillemets (comme dans "Debian Project" ou Debian " "Project). Dans une chaîne entre guillemets, la barre oblique inverse (« \ ») peut être utilisée pour contrecarrer la signification spéciale du guillemet : par exemple ~d"\"email" correspondra à tout paquet dont la description contient un guillemet immédiatement suivi de email.[12]

Voici les types de mots disponibles :

nom

Est en correspondance avec les paquets dont le nom correspond à l'expression rationnelle nom. C'est le mode de recherche par « défaut », utilisé pour les motifs qui ne commencent pas par ~.

[Note]Note

Pour correspondre avec les paquets dont le nom contient plusieurs sous-chaînes différentes, utilisez le motif (décrit ci-dessous) ~n ; par exemple, « ~napti~ntude ».

!mot

Est en correspondance avec les paquets qui ne correspondent pas avec le mot mot. Par exemple, « !~b » sélectionne les paquets qui ne sont pas « cassés ».

[Note]Note

Pour inclure un « ! » dans une expression rationnelle, il doit être « déspécialisé » pour éviter qu'aptitude ne considère qu'il effectue la négation d'un mot. Pour ce faire, écrivez « ~! ».

mot1 | mot2

Correspond aux paquets qui correspondent soit à mot1, soit à mot2.

[Note]Note

Pour inclure un « | » dans une expression rationnelle, il doit être « déspécialisé » pour éviter qu'aptitude ne fasse un OU logique sur les mots. Pour ce faire, écrivez « ~| ».

(mot)

Correspond avec mot. C'est très utile pour grouper explicitement des expressions complexes. Par exemple, « ~D(perl|python) » entre en correspondance avec tout paquet qui dépend d'un paquet dont le nom contient soit perl, soit python.

~Aarchive

Correspond avec les paquets qui sont disponibles depuis une archive qui correspond à l'expression rationnelle archive. Par exemple, « ~Atesting » correspond avec tous les paquets disponibles dans l'archive testing.

~aaction

Correspond avec les paquets sur lesquels l'action donnée va être effectuée. Action peut être « install », « upgrade », « downgrade », « remove », « purge », « hold » (si le paquet a été marqué à conserver), ou « keep » (si un paquet n'est pas modifié).

Veuillez noter que cela ne teste que les actions qui sont actuellement prévues sur un paquet, et pas celles qui pourraient être effectuées. Par exemple, ~aupgrade ne correspond qu'aux paquets dont vous avez décidé de la mise à jour, et non aux paquets qui pourraient être mis à jour (pour cela, il y a ~U).

~Btype

Correspond avec les paquets qui ont des dépendances non satisfaites (« cassées ») du type donné. Le type peut être « depends », « predepends », « recommends », « suggests », « conflicts » ou « replaces ».

~b

Correspond aux paquets qui sont « cassés » : ils ont une dépendance, une pré-dépendance ou un conflit non satisfait.

~Cmot

Correspond aux paquets qui entrent en conflit avec un paquet correspondant au mot donné. Par exemple, « ~C~mdburrows@debian.org » correspond à tous les paquets qui entrent en conflit avec un paquet que je maintiens.

~c

Correspond aux paquets qui ont été supprimés mais dont les fichiers de configuration restent sur le système (c'est-à-dire qu'ils ont été supprimés, mais pas purgés).

~D[B][type:]mot

type peut être soit « provides », soit un des champs de dépendances donnés dans la documentation de ~B. Si type n'est pas présent, il prend sa valeur par défaut : depends. Si B est présent, seules les dépendances cassées sont considérées.

Si type est « provides », correspond aux paquets qui fournissent un paquet correspondant à mot (équivalent à ~P). Sinon, correspond aux paquets qui déclarent une dépendance du type type sur un paquet qui correspond au mot.

~ddescription

Correspond aux paquets dont la description correspond à l'expression rationnelle description.

~E

Correspond aux paquets Essentiels.

~F

Ce mot ne correspond avec aucun paquet (« F » signifie « faux »).[13]

~g

Correspond aux paquets qui ne sont pas installés, ou qui ont été installés automatiquement mais desquels aucun paquet installé ne dépend.

~Gmarqueur

Correspond aux paquets dont le champ Marqueur (« Tag ») correspond à l'expression rationnelle marqueur. Par exemple, le motif « ~Ggame::strategy » va rechercher tous les jeux de stratégie.

Pour plus d'informations sur l'étiquetage et debtags, consultez http://debtags.alioth.debian.org.

~i

Correspond aux paquets qui sont actuellement installés.

Bien que par défaut toutes les versions sont testées, ceci n'entre en correspondance qu'avec les paquets installés.

~M

Correspond aux paquets qui ont été automatiquement installés.

~mresponsable

Correspond aux paquets dont le champ Responsable (du paquet Debian) correspond à l'expression rationnelle responsable. Par exemple, « ~mjoeyh » va rechercher tous les paquets maintenus par Joey Hess.

~N

Correspond aux paquets qui sont « nouveaux ».

~nnom

Correspond aux paquets dont le nom correspond à l'expression rationnelle nom. Par exemple, la plupart des paquets qui correspondent à « ~n^lib » sont des bibliothèques (« libraries ») sous un forme quelconque.

~Oorigine

Correspond aux paquets dont l'origine correspond à l'expression rationnelle origine. Par exemple, « !~Odebian » va rechercher tous les paquets non officiels sur votre système (paquets qui ne proviennent pas de l'archive Debian).

~Pmot

Correspond aux paquets qui fournissent un paquet qui correspond à mot. Par exemple, « ~Pmail-transport-agent » correspondra à tous les paquets qui fournissent « mail-transport-agent ».

~ppriorité

Correspond aux paquets dont la priorité est priorité. Priorité doit être extra, important, optional, required ou standard. Par exemple, « ~prequired » correspond aux paquets dont la priorité est « required ».

~R[B][type:]mot

type peut être soit « provides », soit un des champs de dépendances donnés dans la documentation de ~B. Si type n'est pas présent, il prend sa valeur par défaut : depends. Si B est présent, seules les dépendances cassées sont considérées.

Si type est « provides », correspond aux paquets dont le nom est fournit par un paquet correspondant à mot. Sinon, correspond aux paquets sur lesquels un paquet correspondant à mot déclare une dépendance du type type.

~S filtre mot

Ce motif restreint la recherche aux versions de paquets correspondant au filtre. En particulier, il correspond à toute version de paquet correspondant à la fois à filtre et mot. La chaîne de recherche est mot.

~ssection

Correspond aux paquets dont la section correspond à l'expression rationnelle section.

~T

Ce mot correspond à n'importe quel paquet. Par exemple, « ~i~P~T » correspond aux paquets installés qui sont fournis par un paquet quelconque.

~ttâche

Correspond aux paquets qui font partie d'une tâche dont le nom correspond à l'expression rationnelle tâche.

~U

Ce mot correspond à tout paquet installé qui peut être mis à jour.

~Vversion

Correspond à tout paquet dont le numéro de version correspond à l'expression rationnelle version, à l'exception des valeurs ci-dessous. Par exemple, « ~Vdebian » correspond à tous les paquets dont le numéro de version contient « debian ».

Les valeurs suivantes de version sont traitées spécialement. Pour rechercher une version contenant ces valeurs, faites les précéder d'une barre oblique inverse ; par exemple, pour rechercher des paquets dont le numéro de version contient « CURRENT », rechercher « \CURRENT ».

  • CURRENT correspond à la version actuellement installée d'un paquet, s'il y en a une.

  • CANDIDATE correspond à la version, si elle existe, du paquet qui sera installée si vous appuyez sur + quand le paquet est sélectionné ou si vous lancez aptitude install avec son nom.

  • TARGET correspond à la version d'un paquet dont l'installation est prévue, si elle existe.

~v

Correspond à tout paquet qui est uniquement virtuel : son nom est fourni ou mentionné par un paquet comme dépendance, mais aucun paquet de ce nom n'existe. Par exemple, « ~v!~P~T » correspond aux paquets qui sont virtuels et qui ne sont fournis par aucun paquet, c'est-à-dire les paquets sur lesquels il y a une dépendance mais qui n'existe pas.

~Wmot

Étend la recherche : si les versions à faire correspondre ont été limitées par un motif enveloppant (comme ~D), ces limites sont oubliées. Donc, ~Wmot correspond à une version d'un paquet si mot correspond à une quelconque version de ce paquet.



[11] Les caractères spéciaux des expressions rationnelles sont « + », « - », « . », « ( », « ) », « | », « [ », « ] », « ^ », « $ » et « ? ». Remarquez que certains de ceux-ci sont aussi des caractères spéciaux d'aptitude, donc si vous voulez, par exemple, taper un « | » littéral, il vous faudra, le déspécialiser deux fois comme cela : « \~| ».

[12] Les séquences d'échappement \\, \n et \t sont également disponibles.

[13] C'est principalement fourni par symétrie avec ~T.