Diferença entre Egrep e Fgrep

Egrep vs Fgrep

Egrep e fgrep são parte da família de comandos grep. Tanto o egrep quanto o fgrep são usados ​​no Linux como comandos do usuário para facilitar a busca por arquivos de texto sem formatação em milhares de linhas. Ambos os comandos são utilitários de pesquisa de texto baseados em DOS e buscam arquivos, diretórios e árvores de diretórios em busca de um texto ou palavras específicos.

Grep é o comando base para egrep e fgrep. "Grep" significa "impressão de expressão regular global". O Grep suporta comandos de expressão regular na busca de palavras e termos.

O Egrep é uma extensão do comando grep, um comando do usuário para pesquisar uma sequência de caracteres em linhas e vários padrões dentro de um arquivo de texto. Também conhecido como grep estendido, ele procura por um dos argumentos mais padronizados. O Egrep é usado quando o documento é caracterizado como uma "expressão estendida". Ao usar este comando, caracteres especiais como +,?,!, & E outros caracteres e seqüências úteis produzirão resultados em vez de exibir um erro de sintaxe. Isso acontece porque o comando egrep os interpreta como parte de uma expressão regular.

Expressões como o sinal de adição, ponto de interrogação, barra vertical e parênteses são frequentemente usadas como operadores que ajudam na especificação de resultados. A expressão é colocada após o termo de pesquisa ou expressão regular. A seguir, descreve a função dos operadores:

Expressão regular e um sinal de mais produzem um ou mais resultados da expressão regular.
Expressão regular antes de um ponto de interrogação fornece zero ou uma correspondência do termo de pesquisa especificado.
Uma barra vertical é usada para separar várias expressões regulares ou termos de pesquisa.
Os parênteses são usados ​​para incluir e agrupar uma expressão ou palavras regulares.

Ao codificar este comando “d” no Linux, ele é expresso como “grep-e”, egrep ou egrep plus, para a palavra ou termos a serem pesquisados ​​no arquivo. Não há limite para quantas palavras de pesquisa podem ser incluídas.

Enquanto isso, o fgrep é uma extensão do egrep. No Linux, é indicado como "grep-f" e também conhecido como grep de cadeia fixa. É semelhante ao grep, pois não reconhece nem interpreta expressões ou caracteres regulares ou especiais. Como não entende os recursos estendidos da expressão regular, ignora esses caracteres durante uma pesquisa. Ele retorna apenas palavras e termos correspondentes e nada mais.

O Fgrep interpreta os documentos como uma lista de cadeias de caracteres fixas. Seu processo de pesquisa é muito rápido comparado aos outros comandos, porque usa o algoritmo de correspondência de string Aho-Corasick.

Resumo:

1. Ambos egrep e fgrep são derivados do comando base grep. O "egrep" significa "grep estendido" enquanto o fgrep representa "grep de cadeia fixa".
2. Um comando egrep é usado para procurar vários padrões dentro de um arquivo ou outro tipo de repositório de dados, enquanto o frgrep é usado para procurar por strings.
3. O termo "egrep" é comumente expresso como "grep-e", enquanto "fgrep" é codificado como "grep-f".
4.O comando egrep permite o uso de expressões regulares estendidas, enquanto o grep pesquisa apenas a palavra ou termo correspondente especificado pelo usuário no comando. O frep não reconhece ou entende expressões regulares regulares ou estendidas.
5.Em comparação com outros comandos de pesquisa, o processo de pesquisa para o fgrep é muito rápido, pois se preocupa apenas com a palavra de pesquisa fornecida.
6.O comando egrep geralmente usa operadores para gerar uma pesquisa de pesquisa mais progressiva ou específica. Um sinal de mais e o ponto de interrogação lidam com expressões regulares e únicas ou termos de pesquisa. Por outro lado, barras verticais e parênteses são usados ​​para várias expressões regulares com funções opostas. A barra vertical separa as expressões enquanto o operador de parênteses as agrupa.