Este é o comando concordp 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
concordap - pesquisa um arquivo por uma string ou expressão regular, com correspondência aproximada
capacidades
SINOPSE
concordar [ - # cdehiklnpstvwxBDGIS ] de cinto de segurança [-f arquivo de padrões ] [ nome do arquivo...]
DESCRIÇÃO
concordar procura a entrada nomes de arquivos (a entrada padrão é o padrão, mas veja um aviso em
LIMITAÇÕES) para registros contendo strings que exatamente or aproximadamente combinar um
padronizar. Um registro é por padrão uma linha, mas pode ser definido de forma diferente usando o -d
opção (veja abaixo). Normalmente, cada registro encontrado é copiado para a saída padrão.
A correspondência aproximada permite encontrar registros que contenham o padrão com vários erros
incluindo substituições, inserções e exclusões. Por exemplo, jogos de Massechusets
Massachusetts com dois erros (uma substituição e uma inserção). Correndo concordar -2
Massechusets foo exibe todas as linhas em foo contendo qualquer string com no máximo 2 erros de
Massachusets.
concordar suporta muitos tipos de consultas, incluindo curingas arbitrárias, conjuntos de padrões e
em geral, expressões regulares. Veja os PADRÕES abaixo. Suporta a maioria das opções
suportado pela grep família e vários outros (mas não é 100% compatível com grep).
Para obter mais informações sobre os algoritmos usados pela Agrep, consulte Wu e Manber, "Fast Text
Searching With Errors, "Technical report # 91-11, Department of Computer Science,
University of Arizona, junho de 1991 (disponível por ftp anônimo em cs.arizona.edu em
concordp / concordp.ps.1), e Wu e Manber, "Agrep - A Fast Approximate Pattern Searching
Tool ", para aparecer na Conferência USENIX de janeiro de 1992 (disponível por ftp anônimo em
cs.arizona.edu em Acordo / Acordop.ps.2).
Tal como acontece com o resto do grep família, os personagens `$', `^', `*', `[', `]', `^', `|',
`(', `)', `!', e `\'pode causar resultados inesperados quando incluído no de cinto de segurança, como estes
os caracteres também são significativos para o shell. Para evitar esses problemas, deve-se sempre
coloque todo o argumento do padrão entre aspas simples, ou seja, 'padrão'. Não use duplo
citações (").
Quando concordar é aplicado a mais de um arquivo de entrada, o nome do arquivo é exibido
precedendo cada linha que corresponde ao padrão. O nome do arquivo não é exibido quando
processando um único arquivo, então se você realmente deseja que o nome do arquivo apareça, use / dev / null as
um segundo arquivo na lista.
OPÇÕES
-# # é um número inteiro não negativo (no máximo 8) especificando o número máximo de erros
permitido na localização das correspondências aproximadas (o padrão é zero). Geralmente, cada
inserção, exclusão ou substituição contam como um erro. É possível ajustar
o custo relativo de inserções, deleções e substituições (ver -I -D e -S
opções).
-c Exibe apenas a contagem de registros correspondentes.
-d 'delim'
Definir delim para ser o separador entre dois registros. O valor padrão é '$',
ou seja, um registro é, por padrão, uma linha. delim pode ser uma string de no máximo 8
(com possível uso de ^ e $), mas não uma expressão regular. Texto entre dois
delimde, antes do primeiro delim, e depois do último delim é considerado como um
registro. Por exemplo, -d '$$' define parágrafos como registros e -d '^ De' define
mensagens de correio como registros. concordar corresponde a cada registro separadamente. Esta opção faz
atualmente não funciona com expressões regulares.
-e de cinto de segurança
O mesmo que um simples de cinto de segurança argumento, mas útil quando o de cinto de segurança começa com um `-'.
-f arquivo de padrões
arquivo de padrões contém um conjunto de padrões (simples). A saída são todas as linhas que
corresponder a pelo menos um dos padrões em arquivo de padrões. Atualmente, a opção -f funciona
apenas para correspondência exata e para padrões simples (qualquer meta símbolo é interpretado como um
caráter regular); é compatível apenas com -c, -h, -i, -l, -s, -v, -w e -x
opções. veja LIMITAÇÕES para limites de tamanho.
-h Não exiba nomes de arquivos.
-i Pesquisa que não faz distinção entre maiúsculas e minúsculas - por exemplo, "A" e "a" são considerados equivalentes.
-k Nenhum símbolo no padrão é tratado como um metacaractere. Por exemplo, concordap -k
'a (b | c) * d' foo irá encontrar as ocorrências de a (b | c) * d em foo, enquanto concordap
'a (b | c) * d' foo encontrará substrings em foo que correspondem à expressão regular
'a (b | c) * d'.
-l Liste apenas os arquivos que contêm uma correspondência. Esta opção é útil para procurar
arquivos contendo um certo padrão. Por exemplo, "concordap -l 'maravilhoso' *" irá
liste os nomes dos arquivos no diretório atual que contêm a palavra
'Maravilhoso'.
-n Cada linha impressa é prefixada por seu número de registro no arquivo.
-p Encontre registros no texto que contenham uma superseqüência do padrão. Por exemplo,
concordar -p DCS Foo precisarão partida "Departamento of Computação Ciência."
-s Trabalhe silenciosamente, ou seja, não exiba nada, exceto mensagens de erro. Isso é útil para
verificar o status do erro.
-t Produza o registro a partir do final de delim para (e incluindo) o próximo delim.
Isso é útil para casos onde delim deve vir no final do registro.
-v Modo inverso - exibe apenas os registros que do não conter o padrão.
-w Pesquise o padrão como uma palavra - ou seja, cercado por caracteres não alfanuméricos.
O não alfanumérico devo cercar o jogo; eles não podem ser contados como erros.
Por exemplo, nos concordar -w -1 carro corresponderá a carros, mas não a personagens.
-x O padrão deve corresponder a toda a linha.
-y Usado com a opção -B. Quando -y está ligado, concordap sempre produzirá as melhores correspondências
sem dar um prompt.
-B Melhor modo de correspondência. Quando -B é especificado e nenhuma correspondência exata é encontrada, concorda
continue a pesquisar até as correspondências mais próximas (ou seja, aquelas com número mínimo de
erros) forem encontrados, momento em que será exibida a seguinte mensagem: "o melhor
a correspondência contém x erros, há y correspondências, gerá-los? (s / n) "A melhor correspondência
O modo não é compatível com a entrada padrão, por exemplo, entrada de pipeline. Quando o - #, -c,
ou as opções -l são especificadas, a opção -B é ignorada. Em geral, -B pode ser
mais lento que - #, mas não muito.
-Dk Defina o custo de uma exclusão para k (k é um número inteiro positivo). Esta opção não
atualmente trabalha com expressões regulares.
-G Produza os arquivos que contêm uma correspondência.
-Ik Defina o custo de uma inserção para k (k é um número inteiro positivo). Esta opção não
atualmente trabalha com expressões regulares.
-Sk Defina o custo de uma substituição para k (k é um número inteiro positivo). Esta opção faz
atualmente não funciona com expressões regulares.
PADRÕES
concordar suporta uma grande variedade de padrões, incluindo strings simples, strings com classes
de caracteres, conjuntos de strings, curingas e expressões regulares.
Cordas
qualquer sequência de caracteres, incluindo os símbolos especiais `^ 'para o início da linha
e `$ 'para fim de linha. Os caracteres especiais listados acima (`$', `^', `*', `[',
`^', `|', `(', `)', `!', e `\') deve ser precedido por `\' se eles forem
correspondidos como caracteres regulares. Por exemplo, \ ^ abc \\ corresponde à string
^ abc \, enquanto ^ abc corresponde à string abc no início de uma linha.
Classes of caracteres
uma lista de caracteres dentro de [] (em ordem) corresponde a qualquer caractere do
Lista. Por exemplo, [a-ho-z] é qualquer caractere entre a e h ou entre o e z.
O símbolo `^ 'dentro de [] complementa a lista. Por exemplo, [^ in] denota qualquer
caractere no conjunto de caracteres, exceto o caractere 'i' para 'n'. O símbolo '^', portanto
tem dois significados, mas isso é consistente com egrep. O símbolo '.' (não me importo)
representa qualquer símbolo (exceto o símbolo de nova linha).
Booleano operações
concordar suporta uma operação `and '`;' e uma 'ou' operação ',', mas não uma
combinação de ambos. Por exemplo, 'fast; network' procura todos os registros
contendo ambas as palavras.
Selvagem cartões
O símbolo '#' é usado para denotar um curinga. # corresponde a zero ou qualquer número de
caracteres arbitrários. Por exemplo, ex # e corresponde a example. O símbolo # é
equivalente a. * em egrep. Na verdade,. * Funcionará também, porque é um válido
expressão regular (veja abaixo), mas a menos que seja parte de uma expressão regular real
expressão, # funcionará mais rápido.
Densidades of exato e aproximado correspondente
qualquer padrão dentro dos colchetes <> deve corresponder exatamente ao texto, mesmo que corresponda
está com erros. Por exemplo, ics combina matemática com um erro
(substituindo o último s por um a), mas mate não corresponde ao não matemático
importa quantos erros permitamos.
Regular expressões
A sintaxe das expressões regulares em concordar é em geral o mesmo que para
egrep. A operação de união `| ', fechamento de Kleene` *' e parênteses () são todos
suportado. Atualmente '+' não é suportado. As expressões regulares são atualmente
limitado a aproximadamente 30 caracteres (geralmente excluindo metacaracteres). Algum
opções (-d, -w, -f, -t, -x, -D, -I, -S) não funcionam atualmente com
expressões. O número máximo de erros para expressões regulares que usam '*' ou
'|' é 4.
EXEMPLOS
concordp -2 -c ABCDEFG foo
fornece o número de linhas no arquivo foo que contém ABCDEFG dentro de dois erros.
concordp -1 -D2 -S2 'ABCD # YZ' foo
emite as linhas contendo ABCD seguido, dentro de uma distância arbitrária, por YZ, com
até uma inserção adicional (-D2 e -S2 fazem exclusões e substituições também
"caro").
concordp -5 -p abcdefghij / caminho / para / dicionário / palavras
produz a lista de todas as palavras contendo pelo menos 5 das 10 primeiras letras do
alfabeto in ordem. (Experimente: qualquer lista começando com academia e terminando com
sacrílego deve significar algo!)
concordp -1 'abc [0-9] (de | fg) * [xz]' foo
produz as linhas que contêm, dentro de até um erro, a string que começa com
abc seguido por um dígito, seguido por zero ou mais repetições de de ou fg,
seguido por x, y ou z.
concordp -d '^ De' 'repartição; internet' mbox
exibe todas as mensagens de e-mail (o padrão '^ De' separa as mensagens de e-mail em um e-mail
arquivo) que contém as palavras-chave 'repartição' e 'internet'.
concordp -d '$$' -1 ' 'foo
encontra todos os parágrafos que contêm palavra1 seguida de palavra2 com um erro no lugar
do branco. Em particular, se palavra1 for a última palavra em uma linha e palavra2 for a
primeira palavra na próxima linha, então o espaço será substituído por um símbolo de nova linha
e vai combinar. Portanto, esta é uma forma de superar a separação por uma nova linha. Observação
que -d '$$' (ou outro delim que se estenda por mais de uma linha) é necessário,
porque caso contrário, o Agrep procura apenas uma linha de cada vez.
concordar '^ concordar'
mostra todos os exemplos de uso de Agrep nestas páginas de manual.
Use Agrep online usando os serviços onworks.net