InglêsFrancêsEspanhol

Ad


favicon do OnWorks

ara - Online na nuvem

Execute ara no provedor de hospedagem gratuita OnWorks no Ubuntu Online, Fedora Online, emulador online do Windows ou emulador online do MAC OS

Este é o comando ara que pode ser executado no provedor de hospedagem gratuita OnWorks usando uma de nossas várias estações de trabalho online gratuitas, como Ubuntu Online, Fedora Online, emulador online do Windows ou emulador online do MAC OS

PROGRAMA:

NOME


ara - um utilitário para fazer consultas booleanas regexp no banco de dados de pacotes Debian

SINOPSE


Fornada modo:
ara [opções] consulta

No modo batch, ara leva uma ou mais consultas como argumentos, leia os arquivos de banco de dados
de acordo com sua configuração, e envia os resultados para stdout.

interativo modo:
ara [opções] -i

Com o -i or -interativo opções, ara lê os arquivos de banco de dados e, em seguida, solicita o
usuário para consultas ou comandos. Os resultados são exibidos (com a ajuda de um pager, como
mais or menos se necessário), e ara pergunta ao usuário novamente. O modo interativo é fortemente
recomendado, uma vez que o carregamento dos bancos de dados do pacote pode ser longo, mas uma vez carregado, as consultas são executadas
bastante rápido. Esta é uma grande vantagem de ara sobre ferramentas como dpkg-iasearch or
dpkg-dctrl.

Para combinações de teclas, consulte KEY LIGAÇÕES.

Gráfico interface (GTK2):
Uma interface gráfica, xará(1), é fornecido pelo pacote Debian xara-gtk.

pergunta sintaxe
veja a EXEMPLOS seção para uma introdução rápida; xará tem alguma ajuda embutida. o
a sintaxe é descrita em detalhes abaixo.

DESCRIÇÃO


ara e xará permite ao usuário pesquisar o banco de dados de pacotes de software Debian (que inclui
pacotes instalados e desinstalados) usando consultas poderosas feitas de combinações booleanas de
expressões regulares agindo em campos dados por padrões.

Por exemplo, a consulta seção = utils & depende: (gtk or tk8 or xlibs or onde or gnomo or quantidade)
& debian & pacote irá mostrar os pacotes na seção útil que tem gráfico
interfaces (porque dependem de kits de ferramentas gráficas ou bibliotecas X11), e cujo
descrição contém as palavras debian e pacote.

JUSTIFICATIVA


Os usuários Debian podem facilmente instalar software com os comandos dselecionar or apt-get instalar.
Eles podem escolher (no Debian 3.1 instável) entre mais de 30,000 pacotes. Encontrando o certo
pacote pode ser bastante difícil. Embora os pacotes sejam categorizados em seções brutas,
ainda existem muitos pacotes e ler todas as descrições está fora de questão.

Os arquivos de banco de dados são enormes e sua sintaxe semelhante a correio torna-os difíceis de pesquisar com
ferramentas orientadas a linha como grep. Existem comandos como dpkg-iasearch(1) ou
dpkg-dctrl(1) mas suas capacidades são limitadas. Ferramentas gráficas de gerenciamento de pacotes, como
as aptidão or sináptica têm recursos de pesquisa. Embora ara pode ligar apto para instalar ou
remover pacotes, sua orientação é a de uma ferramenta de pesquisa poderosa. Na verdade, o nome ara
vem da forma imperativa do verbo turco pesquisa que significa "pesquisar".

A DEBIANO PACKAGE DATABASE


O banco de dados de pacotes Debian é um arquivo de texto enorme em / var / lib / dpkg / available (ou um
coleção de arquivos de texto em / var / lib / apt / lists /) Esses arquivos estão em uma caixa de correio
formato, e uma entrada típica se parece com isto:

Prioridade: obrigatório
Seção: base
Tamanho instalado: 460
Origem: debian
Mantenedor: Desenvolvimento Dpkg[email protegido]>
Bugs: debbugs: //bugs.debian.org
Arquitetura: i386
Fonte: dpkg
Versão: 1.10.24
Substitui: dpkg (<< 1.10.3)
Depende: libc6 (> = 2.3.2.ds1-4), ....
Nome do arquivo: pool / main / d / dpkg / dselect_1.10.24_i386.deb
Tamanho: 119586
MD5sum: c740f7f68dab08badf4f60b51a33500a
Descrição: uma ferramenta de usuário para gerenciar pacotes Debian
dselect é a interface de usuário principal para instalação, remoção e
gerenciamento de pacotes Debian. É um front-end para o dpkg.

Cada pacote é assim descrito por um conjunto de campos (como Pacote, Descrição, Versão ...).

INQUERIR SINTAXE E SEMÂNTICA


Aqui, descrevemos a sintaxe da consulta com alguns detalhes. A partir da versão 1.0, ara apresenta novos,
sintaxe simplificada que é bastante tradicional e deve ser familiar para quem já usou
motores de busca. Os termos de pesquisa são simplesmente combinados com E, OR e NÃO Operadores booleanos.
Dando uma olhada no EXEMPLOS seção no final deste manual deve fornecer a você um
ponto de partida.

Considere o conjunto D das descrições dos pacotes Debian contidas no arquivo
/ var / lib / dpkg / available (ou em arquivos em / var / lib / apt / lists /) Cada descrição é um
conjunto de casais do formulário (f, v) onde f e v são strings: f é o nome do campo
(nomeadamente, Pacote, Descrição, Nome do arquivo, Depende, etc); v é o seu valor. Assim D é um conjunto
de conjunto de casais, formando o universo. As consultas selecionam subconjuntos do universo D.
As opções de saída selecionam quais campos da parte selecionada do universo exibir, e
como exibi-los.

Consultas
A pergunta é uma combinação booleana de expressões atômicas. Um atômico expressão seleciona um
subconjunto do conjunto D de descrições. Eu chamo este conjunto de significado da expressão; E se e
denota uma expressão atômica, seu significado é denotado por [e]. O significado de um booleano
combinação de expressões atômicas é apenas a combinação booleana do significado de seu
constituintes. Em outras palavras, se e1 e e2 são expressões atômicas, então e1 & e2 é um
consulta, cujo significado é a interseção dos significados de e1 e e2; e o significado de
e1 | e2 é a união dos significados de e1 e e2.

Atomic expressões
As expressões atômicas podem ser de formas de cinto de segurança, / regexp /, Quote_string, especificação de campo
operator1 cordaou especificação de campo operator2 regexp.

Booleano operadores e constante
e1 & e2 (também e1 E e2, e1 e e2)
Esta é a conjunção lógica (conjunto de interseção). Retorna a interseção de [e1]
e [e2], ou seja, pacotes que satisfazem e1 e e2.

e1 | e2 (também e1 OR e2, e1 or e2)
Esta é uma disjunção lógica (conjunto de união). União de [e1] e [e2], ou seja, pacotes
satisfazendo e1, e2 ou ambos.

! e1 (também NÃO e1, não e1)
Esta é uma negação lógica (complementação de conjunto). Complemento de [e1], ou seja, pacotes
não satisfazendo e1.

Por favor, note que ~ representa o especificador de campo padrão atual e não é um
alias para o operador de complementação.

verdadeiro (também todos os)
O conjunto de todas as descrições, ou seja, todos os pacotes.

falso (também Nenhum)
O conjunto vazio, ou seja, sem pacotes.

Campo especificadores
Um especificador de campo especificação de campo é uma lista separada por vírgulas de padrões de campo.

Os padrões de campo são como padrões de casca simples e podem conter caracteres de estrela (que
representam qualquer coisa) ou pontos de interrogação (que representam qualquer caractere único). Eles são
não faz distinção entre maiúsculas e minúsculas. Eles especificam um conjunto de campos.

Por exemplo descrição e Descrição especifique o conjunto de campos { Descrição }, enquanto que
de * especifica { Descrição, Depende }.

O especificador especial ~ denota o especificador padrão atual (veja abaixo).

Atual Campos especificadores e simplificada atômico expressões
A necessidade de repetir o especificador de campo pode tornar a sintaxe acima complicada. Por isso
existe uma atual campo especificador. O campo atual especificado é, por padrão,
Descrição, Pacote. Expressões atômicas simplificadas são simplesmente palavras ou shell simplificado
expressões (que não precisam ser colocadas entre aspas duplas) e são pesquisadas em
campos no especificador de campo atual. Eles podem ser feitos de letras, dígitos, sublinhados,
travessões e pontos. Eles podem conter estrelas ou pontos de interrogação que são interpretados como para
padrões de campo (ou seja, como expressões de shell simplificadas). Se aspas duplas forem usadas, outro
caracteres e espaços podem ser usados.

O especificador de campo padrão em uma consulta pergunta pode ser alterado para especificação de campo simplesmente
prefixando a consulta com especificação de campo:. Isto dá fieldspec: query. Entretanto se pergunta is
complexo (ou seja, contém operadores booleanos binários), você precisa incluir pergunta in
parênteses, como em fieldspec: (query1 or consulta2).

Tanga literais
Tanga literais pode ser fornecido com ou sem aspas duplas; sem aspas duplas, o
sintaxe é como para identificadores C, exceto que você pode usar travessões, você deve começar com um
letra latina ([a-zA-Z]) e você pode continuar com letras latinas, dígitos decimais ou
sublinhado ([a-zA-Z0-9_]) Entre aspas duplas, todos os caracteres são permitidos, exceto
aspas duplas, que devem ser precedidas por uma barra invertida.

Variáveis
Os resultados das consultas podem ser armazenados em variáveis, que podem ser recuperadas posteriormente. Isto não é
muito útil no modo em lote, mas é útil nos modos interativo e gráfico.

Nomes de variáveis ​​começam com um dólar e seguem convenções usuais para variáveis, ou seja, eles
pode ser qualquer combinação de caracteres alfanuméricos e símbolos, como sublinhado, traço, etc.

Os nomes das variáveis ​​diferenciam maiúsculas de minúsculas para que $ Instalado e $ instalado são diferentes.

Para atribuir o resultado de uma consulta (que é um conjunto de pacotes) uma variável chamada $ variável
apenas execute a consulta $ variável := pergunta. Você pode então relembrar este conjunto específico por
simplesmente escrevendo $ variável.

Exemplo: $ instalado := status: (instalado & !não instalado)

Operadores
Operadores de comparação hierárquica podem ser negados mudando a direção do ângulo
colchetes e adicionar ou remover um sinal de igualdade no final (<= torna-se >) Outras operadoras
são negados da seguinte forma: = torna-se != e =~ torna-se ! ~.

fieldspec = string
Expressão atômica selecionando pacotes com um campo em especificação de campo tendo um valor a
valor exatamente igual a corda.

fieldspec (fieldspec <= string, fieldspec> string, fieldspec> = string)
Expressão atômica selecionando pacotes com um campo em especificação de campo cujo valor é
estritamente menos que corda. A ordem usada é a ordem de versão do Debian. Esse
a ordem é compatível com a ordem natural em inteiros e com a versão Debian
números. Ao comparar strings que não contêm caracteres especiais, as letras são classificadas
antes dos números, ao contrário da ordem ASCII lexicográfica a que estamos acostumados. Isso significa
que os números hexadecimais (como somas MD5) não terão sua ordem normal.

Observe que corda deve estar do lado direito do operador (ou seja, você não pode escrever
1000 < Tamanho).

fieldspec =~ / expressão / (também fieldspec: / expression /)
Seleciona descrições cujo campo denominado especificação de campo existe e cujo valor corresponde,
diferenciando maiúsculas de minúsculas, a expressão regular expressão.

fieldspec =~ / expressão / i (também fieldspec: / expression / i)
O mesmo que acima, mas a expressão regular não diferencia maiúsculas de minúsculas.

fieldspec =~ / expressão / w (também fieldspec: / expression / w)
O mesmo que acima, mas a expressão regular diferencia maiúsculas de minúsculas e corresponde apenas em
limites de palavras. Observe que as transições de letra para dígito ou dígito para letra são
considerados limites de palavras.

fieldspec =~ / expressão / iw (também fieldspec: / expression / iw)
A expressão regular aqui não faz distinção entre maiúsculas e minúsculas e tem correspondência nos limites das palavras.

Regular expressões
As expressões regulares são fornecidas entre um par de barras; a última barra pode ser seguida por
uma seqüência comutativa de letras denotando bandeiras. A sintaxe da expressão regular é semelhante ao sed:
os parênteses de agrupamento e a alternância devem ser colocados com barra invertida. Para obter mais detalhes, consulte o
Capítulo do manual Objetivo Caml sobre o módulo Str. Resumidamente (x,x1,x2 são meta-símbolos
denotando expressões regulares):

/./ Qualquer personagem.

/ toto / String literal toto.

/ x1x2 / Concatenação.

/ x1 \ | x2 /
Alternação.

\ (x1 \) *
Fechamento em estrela.

[CD] Faixa de caracteres.

\b Limites da palavra.

/XI Não diferencia maiúsculas de minúsculas.

/ x / w Em limites de palavras.

Observação
A maioria das consultas conterá uma quantidade considerável de metacaracteres de shell. Por exemplo,
disjunção lógica é denotada pelo caractere de barra vertical, que é usado por todos os shells conhecidos.
O problema é agravado pelo fato de que nomes de comandos reais podem aparecer em
as expressões utilizadas; configurar com sucesso um pipeline UNIX por erro é, portanto,
plausível.

Ao ligar ara a partir da linha de comando no modo batch, é fortemente recomendado que você proteja
suas consultas cercando-as de citações simples; nunca escreva algo como ara
Pacote * =~ / halt| reinicializar | desligar / pois isso muito provavelmente irá reiniciar o seu sistema (e é
sintaxe de expressão regular incorreta, se parar or reinicialização or encerramento significa: os tubos devem ser
barra invertida). Em vez disso, deve-se escrever ara 'Pacote * =~ / halt\ | reinicializar \ | encerrar /'

OPÇÕES


Divisão de
-interativo, -i
Modo interativo; solicitar uma consulta, exiba-a.

-config (também para xará)
Definir o nome do arquivo de configuração (padrão $ HOME / .ara / ara.config).

-noconfig
Não tente criar um arquivo de configuração.

-nenhuma história
Não salve o histórico de comandos

Ajuda opções
-Socorro (também para xará)
Mostre alguma ajuda

-cerca de Exibir direitos autorais, agradecimento e dedicação.

-versão, -cerca de (também para xará)
Imprimir autor, licença, versão e dedicatória (e sair se for chamado a partir do CLI).

-exemplos
Exibir alguma documentação incluindo exemplos de saída.

-q
Consulta (por exemplo, depende: xlibs &! Pacote: xcalc).

-consulta
Idem.

Opções pertencente para que o terminal
-progresso (-sem progresso)
Mostra ou não mostra o indicador de progresso ao carregar o banco de dados.

-linhas
Defina a altura do terminal para exibição interativa. Por padrão, isso é retirado do
variável de ambiente LINHAS ou como 25 se for indefinido.

-colunas
Defina a largura do terminal para exibição interativa. Por padrão, isso é retirado do
variável de ambiente COLUNAS ou como 25 se for indefinido.

-pager (-nopager)
Use (ou não use) um pager exibindo saída longa no modo interativo. O pager
comando é definido no arquivo de configuração $ HOME / .ara / ara.config. Por padrão
isto é / etc / alternative / pager. O pager só é usado quando o tamanho da saída
excede a altura do terminal.

-depurar (também para xará)
Habilitar informações de depuração

- nível de depuração (também para xará)
Defina o nível de depuração (mais alto é mais detalhado, o máximo é 100, o padrão é 10)

Ecrã estilos
-novo Mostra apenas a versão mais recente de cada pacote.

-velho Liste todas as versões dos pacotes.

-baixo
Exibe os nomes dos pacotes que satisfazem a consulta (e sua versão se -velho está definido), com
vários pacotes por linha.

-Lista
O mesmo, mas exibe um nome de pacote por linha e sem chaves (padrão).

-cru
Para cada pacote que satisfaça a consulta, exiba todos os campos selecionados.

-mesa
Exibe os resultados em uma tabela.

-sem Fronteiras
Não desenhe bordas ASCII para a saída tabular.

-fronteiras
Desenhe bordas ASCII para saída tabular.

-contagem
Exibe o número de pacotes correspondentes.

-Campos
Limita a saída aos campos especificados. Os especificadores de largura opcionais são usados ​​com o
-mesa opção e ignorado caso contrário. Use * para exibir todos os campos (mas lembre-se de
escapar do personagem estrela de sua concha).

-ast Descarregue a árvore de sintaxe abstrata de consultas analisadas para stderr.

EXEMPLOS


ara 'Seção = utils'
Liste o nome de cada pacote na seção utils.

ara 'Section = utils e ! Depende: (gnome | kde | gtk) '
... exceto aqueles cujo campo de dependência corresponde ao regexp gnome \ | kde \ | gtk

ara -Lista 'Section = utils e Status: (instalado & !não instalado)'
Liste todos os pacotes instalados na seção útil.

ara -baixo 'section = utils e ! depende: (gtk | gnome | kde) e prioridade = opcional '
... lista vários nomes por linha e mostra apenas pacotes opcionais.

ara -baixo 'section = utils & (! depende: (gtk | gnome | kde) | tamanho <100000) & prioridade = opcional '
Bem, exclua os itens gtk, gnome ou kde apenas se houver 100000 bytes ou mais.

ara -sem Fronteiras -Campos Pacote, tamanho, mantenedor: 20 -mesa \
-baixo 'section = utils & (! depende: (gtk | gnome | kde) | tamanho <100000) & prioridade = opcional '

... mostre os campos Package, Size e Maintainer dos resultados acima como um bom ascii
tabela, limitando o campo do mantenedor a 20 caracteres, mas sem bordas ASCII grosseiras.

ara -velho -Campos Pacote: 8, Tamanho, Descrição: 100 \
-mesa 'Seção = jogos e não (Depende: (gtk | sdl | kde | opengl | gnome | qt)
or / shoot \ | kill \ | destroy \ | blast \ | race \ | bomb / iw
or / multi \ (- \ | \) jogador \ | estratégia \ | conquista \ | 3 \ (- \ | \) d / iw)
e Depende: (xlibs or VGA)
e Tamanho <= 1000000 '

Assumindo uma exibição de 125 colunas, exiba os primeiros oito caracteres do nome do pacote, o
tamanho em bytes, e os primeiros cem caracteres da (primeira linha) da descrição de
todos os pacotes na seção de jogos cujo tamanho não exceda um milhão de bytes, e
que não dependem de coisas sofisticadas como GTK, SDL, KDE, OpenGL, Qt ou Gnome, não mencione
alguma forma de violência (atirar, matar, etc.) em sua descrição, não são descritos
como multiplayer, estratégia, conquista ou tridimensional, e ainda dependem de xlibs
ou svga para excluir jogos baseados em console.

SPEED


ara lê todo o banco de dados na memória e, em seguida, processa as consultas. Uma vez que o banco de dados é
geralmente grande, isso leva algum tempo. No entanto, as consultas são executadas com bastante rapidez. Então especifique
múltiplas consultas ou use o -interativo opção de amortizar o custo de leitura do
base de dados.

Use ara online usando serviços onworks.net


Servidores e estações de trabalho gratuitos

Baixar aplicativos Windows e Linux

  • 1
    limpeza profunda
    limpeza profunda
    Um script Kotlin que destrói todos os builds
    caches de projetos Gradle/Android.
    Útil quando o Gradle ou o IDE permitem que você
    abaixo. O script foi testado em
    macOS, mas...
    Baixar limpeza profunda
  • 2
    Plug-in Eclipse Checkstyle
    Plug-in Eclipse Checkstyle
    O plug-in Eclipse Checkstyle
    integra o código Java Checkstyle
    auditor no IDE Eclipse. O
    plug-in fornece feedback em tempo real para
    o usuário sobre viol ...
    Baixe o plug-in Eclipse Checkstyle
  • 3
    AstrOrzPlayer
    AstrOrzPlayer
    AstrOrz Player é um media player gratuito
    software, parte baseado em WMP e VLC. o
    jogador é de estilo minimalista, com
    mais de dez cores temáticas, podendo também
    b ...
    Baixar AstrOrzPlayer
  • 4
    Movistartv
    Movistartv
    Kodi Movistar+ TV é um ADDON para XBMC/
    Kodi que permite dispor de um
    decodificador de serviços IPTV de
    Movistar integrado em um dos
    centros de mídia ma...
    baixar movistv
  • 5
    Código :: Blocos
    Código :: Blocos
    Code::Blocks é um software livre, de código aberto,
    plataforma cruzada C, C++ e Fortran IDE
    construído para atender às necessidades mais exigentes
    de seus usuários. Ele é projetado para ser muito
    extens ...
    Baixar Código::Blocos
  • 6
    Em meio a
    Em meio a
    No meio ou interface avançada do Minecraft
    e o Data / Structure Tracking é uma ferramenta para
    exibir uma visão geral de um Minecraft
    mundo, sem realmente criá-lo. Isto
    posso ...
    Baixar no meio
  • Mais "

Comandos Linux

Ad