Řetězec, který zadáváte při hledání balíku nebo při omezování zobrazení, se nazývá „vyhledávací vzor“. Přestože většina hledání používá pouze hledání podle jména, aptitude vám nebrání ve vytváření komplexnějších dotazů.
![]() | Poznámka |
---|---|
Vyhledávací vzory nemusíte používat pouze v celoobrazovkovém režimu, ale také u některých řádkových příkazů. Podrobnosti naleznete v kapitole Přehled příkazů. |
Vyhledávací vzor se skládá z jedné nebo více podmínek (někdy nazývaných „termy“). Balíky se shodují se vzorem, pokud se shodují se všemi jeho termy. Termy obvykle začínají vlnkou („~“), za kterou následuje znak určující typ termu a za ním je případný řetězec znaků.
Implicitně se vzory porovnávají vůči všem dostupným verzím balíku, ale
pro některé vzory existují výjimky. Například vzor ~D
akceptuje jako
parametr jiný vzor a shoduje se s balíky, které závisí na balících
splňující tento vzor. V tomto případě se budou testovat pouze balíky,
které splní příslušnou závislost. Verze pro porovnání se mění pouze
v termech, které mají podterm (jako zmíněný ~D
).
Většina textových hledání (v názvech balíků, popisech, atd.) probíhá pomocí regulárních výrazů (velikost písmen se ignoruje). To znamená, že musíte před řídící znaky regulárních výrazů psát zpětná lomítka. [11] (Například pro nalezení „g++“ byste měli použít vzor „g\+\+“.)
Tzv. „bílé znaky“ (mezery, tabulátory a pod.) normálně
slouží k oddělování termů, ale jinak je aptitude ignoruje. Chcete-li
zahrnout bílé (nebo jiné speciální) znaky, můžete před ně vložit vlnku
(např. Projekt~ Debian
), nebo term obklopit
uvozovkami (jako třeba "Projekt Debian"
). Dokonce
je možná i varianta (Projekt" "Debian
). Uvnitř
termu v uvozovkách můžete pro zrušení speciálního významu uvozovek
použít zpětné lomítko („\“). Například
~d"\"email"
"
se bude shodovat s balíky, jejichž
popis obsahuje uvozovku bezprostředně následovanou řetězcem
email
.
[12]
K dispozici jsou následující termy:
název
Shoduje se s balíky, jejichž názvy se shodují s regulárním výrazem
název
. Toto je „implicitní“
režim hledání a používá se pro vzory, které nezačínají vlnkou
~
.
![]() | Poznámka |
---|---|
Pro vyhledání balíků, jejichž názvy obsahují několik různých podřetězců,
použijte |
!term
Shoduje se s balíky, které se neshodují s termem
term
. Například
„!~b
“ vybere balíky, které nejsou
„porušené“.
![]() | Poznámka |
---|---|
Chcete-li zahrnout znak „!“ do regulárního výrazu, musíte
ošetřit, aby jej aptitude nepovažovala za negaci termu:
„ |
term1
| term2
Shoduje se s balíky, které se shodují buď
s term1
nebo
s term2
.
![]() | Poznámka |
---|---|
Chcete-li zahrnout znak „|“ do regulárního výrazu, musíte
ošetřit, aby jej aptitude nepovažovala za logický term NEBO:
„ |
(term
)
Shoduje se s term
. Závorky jsou užitečné
pro explicitní shlukování složitých výrazů. Například
„~D(perl|python)
“ se shoduje
s libovolnými balíky, které závisí na balíku jehož název obsahuje buď
řetězec perl
nebo python
.
~Aarchiv
Shoduje se s verzemi balíků, které jsou dostupné z archivu, jehož název se
shoduje s regulárním výrazem archiv
.
Tj. „~Atesting
“ se shoduje
s libovolným balíkem v testovací
distribuci.
~aakce
Shoduje se s balíky, na kterých je naplánována daná
akce
. Akce
může
nabývat hodnot „install
“,
„upgrade
“,
„downgrade
“,
„remove
“,
„purge
“,
„hold
“ (testuje, zda je balík podržen
v aktuální verzi) nebo „keep
“
(testuje, zda se stav balíku nezmění).
Poznamenejme, tento test zjišťuje pouze akce, které jsou na balíku
skutečně naplánovány a nebere ohled na to, zda
mohou být provedeny. Například
~aupgrade
se shoduje právě s těmi balíky, které
jste se rozhodli aktualizovat, ne s balíky, které by se
daly aktualizovat (pro to použijte
~U
).
~Btyp
Shoduje se s balíky, které mají nesplněné („porušené“)
závislosti daného typ
u.
Typ
může nabývat hodnot
„depends
“,
„predepends
“,
„recommends
“,
„suggests
“,
„conflicts
“ nebo
„replaces
“.
~b
Shoduje se s balíky, které jsou „porušené“, tj. mají nesplněné závislosti, předzávislosti, nebo jsou v konfliktu.
~Cterm
Shoduje se s balíky, které jsou v konfliktu s balíky splňujícími daný
term
. Například
„~C~mdburrows@debian.org
“ vybere
všechny balíky, jež jsou v konfliktu s balíky, které spravuje autor
aptitude.
~c
Shoduje se s balíky, které jsou odstraněny, ale jejichž konfigurační soubory stále zůstávají v systému (tj. jsou odstraněny, ale ne vyčištěny).
~D[B][typ
:]term
typ
může být buď
„provides
“, nebo jedna ze závislostí
popsaných v dokumentaci
k ~B. Pokud typ
není přítomen,
použije se implicitní depends
. Volitelný parametr
B
znamená, že se budou uvažovat pouze porušené
závislosti.
Pokud má typ
hodnotu
„provides
“, shoduje se s balíky, které
poskytují balík odpovídající
term
u. V opačném případě se shoduje
s balíky, které mají závislost typu typ
na verzi
balíku, jež odpovídá term
u.
~dpopis
Shoduje se s balíky, jejichž popis se shoduje s regulárním výrazem
popis
.
~E
Shoduje se s Nezbytnými balíky.
~F
Tento term se neshoduje s žádným balíkem („F“ znamená „falešný“).[13]
~g
Shoduje se s balíky, které nejsou nainstalovány, nebo které byly instalovány automaticky a nyní na nich nezávisí žádný instalovaný balík.
~Gznačka
Shoduje se s balíky, jejichž pole Tag se shoduje s regulárním výrazem
značka
. Například vzor
~Ggame::strategy
se shoduje se shoduje s balíky se
strategickými hrami.
Více informací o značkách naleznete na domovské stránce projektu Debtags.
~i
Shoduje se s verzemi aktuálně nainstalovaných balíků.
Jelikož se standardně testují všechny verze, znamená to, že se shoduje s aktuálně nainstalovanými balíky.
~M
Shoduje se s balíky, které byly instalovány automaticky.
~msprávce
Shoduje se s balíky, jejich pole Maintainer (Správce) odpovídá
regulárnímu výrazu správce
. Například
„~mjoeyh
“ nalezne všechny balíky
spravované Joey Hessem.
~N
Shoduje se s „novými“ balíky.
~nnázev
Shoduje se s balíky, jejichž název se shoduje s regulárním výrazem
název
. Například většina balíků
odpovídajících výrazu „~n^lib
“ budou
nejrůznější knihovny.
~Opůvod
Shoduje se s verzemi balíků, jejichž původ se shoduje s regulárním
výrazem původ
. Například
výrazem „!~Odebian
“ můžete ve svém
systému nalézt všechny neoficiální balíky (tj. balíky nepocházející
z archivu Debianu).
~Pterm
Shoduje se s verzemi balíků, které poskytují balík, jež odpovídá
term
u. Například
„~Pmail-transport-agent
“ vyhledá
všechny balíky, které poskytují balík
„mail-transport-agent
“.
~ppriorita
Shoduje se s balíky, jejichž priorita odpovídá
prioritě
.
Prioritu
balíku můžete zadat buď českým
nebo anglickým názvem a musí to být jedna z následujících hodnot:
extra
(extra
),
důležitý
(important
),
volitelný
(optional
),
vyžadovaný
(required
) nebo
standardní
(standard
). Například
„~pvyžadovaný
“
(„~prequired
“) vyhledá všechny balíky
s prioritou „vyžadovaný
“
(„required
“).
~R[B][typ
]:term
Typ
může být buď
„provides
“, nebo jeden z typů
závislostí zmíněných v dokumentaci
termu ~B. Pokud nezadáte typ
,
použije se implicitní depends
. Volitelný parametr
B
znamená, že se budou uvažovat pouze porušené
závislosti.
Pokud má typ
hodnotu
„provides
“, shoduje se s balíky,
jejichž název je poskytován verzí balíku, která odpovídá
term
u. V ostatních případech se shoduje
s balíky, na kterých závisí balíky (typem závislosti
typ
) odpovídající
term
u.
~S filtr
term
Tento term „zúží“ hledání na verze balíků, které splňují
daný filtr
. Konkrétně se shoduje s balíky,
jež splňují jak filtr
, tak
term
. Řetězcová hodnota porovnání je
řetězcová hodnota term
u.
~ssekce
Shoduje se s balíky, jejichž sekce odpovídá regulárnímu výrazu
sekce
.
~T
Tento term se shoduje s libovolným balíkem. Například
„~i~P~T
“ se shoduje s instalovanými
balíky, které jsou poskytovány libovolným balíkem.
~túloha
Shoduje se s balíčky, které jsou součástí úlohy, jejíž jméno
odpovídá regulárnímu výrazu úloha
.
~U
Term se shoduje s libovolným balíkem, který může být aktualizován.
~Vverze
Shoduje se s libovolnou verzí balíku, která odpovídá regulárnímu
výrazu verze
. Například
„~Vdebian
“ vyhledá balíky, jejichž
číslo verze obsahuje řetězec „debian
“.
Jistou výjimkou jsou následující hodnoty
verze
, na které je třeba brát zvláštní
ohled a zadávat je s úvodním lomítkem. Například pro vyhledání balíků,
jejichž verze obsahuje virtuální řetězec CURRENT
,
musíte zadat \CURRENT
.
CURRENT
se shoduje s aktuálně nainstalovanou verzí
balíku.
CANDIDATE
se shoduje s verzí balíku, která by se
nainstalovala, pokud byste na balíčku stiskli +, nebo
pokud byste na něj spustili příkaz aptitude install
.
TARGET
se shoduje s verzí balíku, která je
momentálně naplánována pro instalaci.
~v
Shoduje se s čistě virtuálními balíky, tj. s balíky, jejichž jméno je
poskytováno nějakým balíkem, nebo je toto jméno zmíněno
v závislostech, ale žádný balík toho jména neexistuje. Například
„~v!~P~T
“ se shoduje s virtuálními
balíky, které nejsou poskytovány žádným balíkem, jinými slovy
s balíky, na kterých „něco“ závisí, ale které neexistují.
~Wterm
„Rozšíří“ shodu: pokud jsou omezeny verze balíku, vůči
kterým se má porovnávat vnější term (jako ~D
), nebere se na tato
omezení ohled. Tedy
~W
se shoduje
s verzí balíku, pokud se term
term
shoduje
s libovolnou verzí daného balíku.
[11]
Řídící znaky regulárních výrazů zahrnují:
„+“, „-“, „.“,
„(“, „)“, „|“,
„[“, „]“, „^“,
„$“ a „?“.
Některé z těchto znaků jsou zároveň i řídícími znaky pro
aptitude. Chcete-li například napsat literál „|“, musíte
jej uvodit dvakrát: „\~|
“.
[12]
Zpětné lomítko se dá použít také pro speciální sekvence
\\
, \n
a \t
.
[13]
~F
je poskytován hlavně kvůli symetrii
s ~T
.