apt-patterns - Sintaxe e semânticas dos padrões do
apt search
A partir da versão 2.0, o APT disponibiliza suporte
para padrões, o que pode ser usado para pesquisar a cache do apt por
pacotes.
PADRÕES DE LÓGICA
Estes padrões fornecem os meios básicos para
combinar outros padrões em expressões mais complexas, assim
como padrões ?true e ?false.
?and(PATTERN, PATTERN, ...), PATTERN PATTERN ...
Seleciona objectos onde coincidem todos os padrões
especificados.
?false, ~F
Não seleciona nada.
?not(PATTERN), !PATTERN
Seleciona objectos onde PATTERN não
coincide.
?or(PATTERN, PATTERN, ...), PATTERN | PATTERN | ...
Seleciona objectos onde pelo menos um dos padrões
especificados coincide.
?true, ~T
Seleciona todos os objectos.
(PATTERN)
Seleciona o mesmo que PATTERN, pode ser usado para
contornar precedência, por exemplo, (~ramd64|~ri386)~nfoo
?all-versions(PATTERN)
Seleciona pacotes onde todas as versões coincidem
com PATTERN. Quando em vez disso coincide versões, o mesmo que
PATTERN.
?any-version(PATTERN)
Seleciona qualquer versão onde o padrão
coincide com a versão.
por exemplo, enquanto ?and(?version(1),?version(2)) corresponde a
pacote que tem uma versão contendo 1 e uma versão contendo 2,
?any-version(?and(?version(1),?version(2))) restringe o ?and a actuar na
mesma versão.
?narrow(PATTERN...)
Seleciona qualquer versão que corresponda a todos
os PATTERNs, abreviatura de ?any-version(?and(PATTERN...)).
PADRÕES DE PACOTES
Estes padrões selecionam pacotes específicos.
?architecture(WILDCARD), ~rWILDCARD
Seleciona pacotes que coincidam com a arquitectura
especificada, a qual pode conter wildcards usando qualquer uma delas.
?automatic, ~M
Seleciona pacotes que foram instalados
automaticamente.
?broken, ~b
Seleciona pacotes que têm dependências
quebradas.
?config-files, ~c
Seleciona pacotes que não estão totalmente
instalados, mas têm somente deixados ficheiros residuais de
configuração.
?essential, ~E
Seleciona pacotes que têm Essential: yes definido
no seu ficheiro de controle.
?exact-name(NAME)
Seleciona pacotes com o nome exacto especificado.
?garbage, ~g
Seleciona pacotes que podem ser removidos
automaticamente.
?installed, ~i
Seleciona pacotes que estão actualmente
instalados. Desde a versão 2.5.4, estreitar este padrão (veja
estreitar padrões em cima) faz com que apenas corresponda às
versões instaladas (veja padrões de versão em
baixo).
?name(REGEX), ~nREGEX
Seleciona pacotes onde o nome coincide com a
expressão regular fornecida.
?obsolete, ~o
Seleciona todos os pacotes que já não
existem nos repositórios.
?phasing
Seleciona pacotes que serão mantidos nas
versões anteriores nas actualizações devido a
phasing.
?upgradable, ~U
Seleciona pacotes que podem ser actualizados (têm
um candidato mais recente).
?virtual, ~v
Seleciona todos os pacotes virtuais; que são
pacotes sem versão. Estes existem quando são referenciados
algures no arquivo, por exemplo porque algo depende desse nome.
PADRÕES DE VERSÃO
Estes padrões selecionam versões específicas
de um pacote.
?archive(REGEX), ~AREGEX
Seleciona versões que vêm do arquivo que
correspondem à expressão regular fornecida. Archive, aqui,
significa os valores após a= em apt-cache policy.
?codename(REGEX)
Seleciona versões que vêm do
nome-de-código que correspondem à expressão regular
fornecida. O nome-de-código aqui, significa os valores após n=
em apt-cache policy.
?installed, ~i
Seleciona versões de pacotes que estão
actualmente instaladas. As versões anteriores a 2.5.4 apenas
correspondiam ao nível do pacote, assim
?any-version(?installed?version(2.0)) correspondia mesmo se 2.0 não
estivesse instalado, mas outra versão estava.
?origin(REGEX), ~OREGEX
Seleciona versões que vêm do arquivo que
correspondem à expressão regular fornecida. Origin, aqui,
significa os valores após a= em apt-cache policy.
?section(REGEX), ~sREGEX
Seleciona versões onde a secção
coincide com a expressão regular fornecida.
?source-package(REGEX), ~eREGEX
Seleciona versões onde o nome do pacote fonte
coincide com a expressão regular fornecida.
?source-version(REGEX)
Seleciona versões onde a versão do pacote
fonte coincide com a expressão regular fornecida.
?version(REGEX), ~VREGEX
Seleciona versões onde a string de versão
coincide com a expressão regular fornecida.
?priority(NAME), ~pNAME
Seleciona versões onde a string Priority é
igual ao nome dado.
?security
Seleciona pacotes que são
actualizações de segurança ou sucedem a uma
actualização de segurança.
PADRÕES DE RELACIONAMENTO DE PACOTES
Estes padrões correspondem a versões
específicas de um pacote que dependem ou entram em conflito com
outros pacotes.
?depends(PATTERN), ~DPATTERN, ?pre-depends(PATTERN),
~DPre-Depends:PATTERN, ?suggests(PATTERN), ~DSuggests:PATTERN,
?recommends(PATTERN), ~DRecommends:PATTERN, ?conflicts(PATTERN),
~DConflicts:PATTERN, ?replaces(PATTERN), ~DReplaces:PATTERN,
?obsoletes(PATTERN), ~DObsoletes:PATTERN, ?breaks(PATTERN),
~DBreaks:PATTERN, ?enhances(PATTERN), ~DEnhances:PATTERN
Seleciona versões que
dependem/pré-dependem/sugerem/recomendam/entram em conflito/etc de/com
pacotes que correspondem ao padrão PATTERN.
?reverse-depType(PATTERN), ~RDepType:PATTERN
O oposto de ?depends e amigos - seleciona todos os
pacotes têm dependências-reversas (versões) que
correspondem a PATTERN.
depType é um dos tipos de dependência tal
como depends, para que não tenhamos que repetir aqui a lista inteira
do primeiro parágrafo.
apt remove ?garbage
Remove todos os pacotes que foram instalados
automaticamente e já não fazem falta - o mesmo que apt
autoremove
apt purge ?config-files
Purga todos os pacotes que apenas têm ficheiros de
configuração deixados
apt list '~i !~M (~slibs|~sperl|~spython)'
Lista todos os pacotes instalados manualmente em
secções que correspondam a libs, perl, ou python.
Os padrões no apt são fortemente inspirados pelos
padrões no aptitude, mas com alguns ajustes:
•A sintaxe é uniforme: Se existir um
abre-parênteses após um termo, será sempre assumido ao
inicio de uma lista de argumentos.
No aptitude, a forma de sintaxe "?foo(bar)" pode
significar "?and(?foo,bar)" se foo não tiver um argumento.
No APT, isto irá causar um erro.
•Nem todos os padrões são
suportados.
•Estão disponíveis alguns
padrões adicionais, por exemplo, para encontrar codecs do
gstreamer.
•Escapar termos com ~ não é
suportado.
•Uma vírgula final é permitida em
listas de argumentos
•?narrow aceita argumentos infinitos
•foo não pode ser usado como abreviatura
para ?name(foo), pois isto pode fazer com que erros de escrita passem
despercebidos: Considere ?and(...,~poptional): isto requer que um pacote tenha
prioridade required, mas se você não escrever o ~, irá
requerer que o nome do pacote contenha poptional.
•Os tipos de dependência para ~D e
operadores relacionados precisam de ser especificados no caso
canónico.
página de bugs do APT[1]. Se deseja reportar um bug
no APT, por favor veja /usr/share/doc/debian/bug-reporting.txt ou o comando
reportbug(1).
APT foi escrito pela equipa do APT
<apt@packages.debian.org>.
A tradução Portuguesa foi feita por Américo
Monteiro <a_monteiro@netcabo.pt> de 2009 a 2012. A
tradução foi revista pela equipa de traduções
portuguesas da Debian <traduz@debianpt.org>.
Note que este documento traduzido pode conter partes não
traduzidas. Isto é feito propositadamente, para evitar perdas de
conteúdo quando a tradução está atrasada
relativamente ao conteúdo original.
Jason Gunthorpe
Equipa do APT