Pré-requisitos:
Deixe claro que qualquer distribuição do Linux instalada e configurada. Estamos usando o Ubuntu 20.04 sistema Linux para implementar este tópico. Por outro lado, você também deve ter direitos de usuário root. Abra seu terminal de comando para começar a trabalhar.
Exemplo 01:
Quando você abre o terminal de comando, você está atualmente no Ubuntu 20.04 Diretório inicial do sistema Linux. Vamos navegar para um diretório de documentos. Para isso, você tem que usar o comando “cd” abaixo indicado no shell de comando para fazer isso, junto com um caminho de diretório.
$ cd ~ / Documentos
Agora você está no diretório Documentos do seu sistema Linux. Vamos criar três novos arquivos no diretório Documentos. Para criar novos arquivos de tipo de texto, tente o comando de toque abaixo no shell, seguido por um novo nome de arquivo. Você pode ver que criamos três arquivos chamados “um.txt, ”“ novo.txt, ”e“ test.TXT.”
$ touch one.TXT$ touch new.TXT
teste $ touch.TXT
Você deve adicionar alguns dados de texto ou informações em cada arquivo separadamente, como você pode ver nas imagens abaixo. Agora salve todos os arquivos e feche.
Agora volte ao terminal e liste todos os arquivos e pastas listados no diretório Documentos. Execute o comando “ls” simples para fazer isso conforme abaixo. Você terá uma saída de todos os arquivos e pastas que estão no diretório Documentos. Você pode ver que os arquivos de texto recém-criados e atualizados também estão lá.
$ ls
Agora é a nossa vez de tentar algum comando grep -R no diretório Documentos e seus arquivos ou pastas. Estaremos usando o comando grep -R para excluir os diretórios ao usar uma palavra-chave ou palavra única. Teremos um comando que irá pesquisar essa palavra em particular de todos os arquivos que residem na pasta Documentos, exceto um diretório, que foi fornecido para excluir no comando. Portanto, vamos excluir o diretório “Wao” atualmente presente no diretório Documentos. Então, tente o comando grep abaixo para excluir o diretório “Wao” junto com a sinalização -R, que foi usada para função recursiva, e “Aqsa” foi usada como uma palavra-chave a ser pesquisada nos arquivos. A saída no instantâneo abaixo está mostrando o texto de dois arquivos, “teste.txt ”e“ novo.txt, ”tendo o texto“ Aqsa ”em seus dados e o diretório“ Wao ”não foi verificado devido a exclusão no comando. Porém, o diretório “Wao” também contém alguns arquivos de texto que devem ser evitados para serem verificados.
$ grep -exclude-dir “Wao” -R “Aqsa”
Vejamos os dois arquivos. Experimente o comando cat para ver o arquivo “novo.txt ”contém a palavra-chave“ Aqsa.”
$ cat novo.TXT
O outro arquivo, “teste.txt, ”contendo a palavra-chave“ Aqsa, ”foi exibido usando o comando cat abaixo.
teste $ cat.TXT
Agora vamos excluir o mesmo diretório “Wao” da pasta Documentos usando outra palavra-chave, “bravo”, se estiver em algum arquivo. Então, tente o comando grep abaixo para excluir o diretório como abaixo. A imagem de saída mostra as duas saídas correspondentes para a palavra-chave “bravo” em dois arquivos, “teste.txt ”e“ um.TXT.”
$ grep -exclude-dir “Documentos / Wao” -R “bravo.”
Você pode ver o arquivo “um.txt ”contém a palavra-chave“ bravo ”usando o comando cat.
$ cat um.TXT
A saída abaixo mostra o arquivo “teste.txt ”, que contém a palavra-chave“ bravo ”com o uso de instruções para gatos.
teste $ cat.TXT
Exemplo 02:
Vamos pular para o subdiretório “Wao” da pasta Documentos usando o comando “cd” no shell.
$ cd ~ / Documents / Wao
Vamos criar três novos arquivos, “bin.txt, ”“ tinha.txt, ”e“ sec.txt ”no diretório“ Wao ”ao usar o comando de toque listado abaixo. Adicione alguns dados de texto em todos os arquivos, salve e feche-os.
$ touch bin.TXT$ touch tinha.TXT
$ touch sec.TXT
Vamos listar todos os diretórios usando o comando “ls” conforme abaixo. Você encontrará todos os três arquivos recém-criados nele.
$ ls -a
Vamos tentar a mesma instrução grep em seu terminal de comando para excluir o diretório "Wao" enquanto usa outra palavra-chave "I" como uma correspondência como abaixo.
$ grep -exclude-dir “Documentos / Wao /” -R “I”Agora, a saída para este comando mostra a palavra-chave “I” nos arquivos mantidos na pasta Documentos, enquanto o diretório “Wao” foi ignorado usando a palavra-chave “exclude-dir”.
Agora vamos excluir o mesmo diretório “Wao” usando outra palavra-chave, “rimsha,” do comando grep mostrado abaixo no terminal. O snap de saída não mostra saída porque a palavra-chave “Rimsha” não foi encontrada em nenhum dos arquivos localizados na pasta Documentos.
$ grep -exclude-dir “Documentos / Wao” -R “rimsha”
Exemplo 03:
Vamos navegar para a pasta Documentos primeiro usando o comando “cd” conforme abaixo.
$ cd ~ / Documentos
Vamos listar todos os arquivos e pastas de documentos do diretório usando o comando 'ls' abaixo. A saída mostra algum texto e outros arquivos junto com um subdiretório, “Wao.”
$ ls
Vamos usar o mesmo comando grep para excluir o diretório “Wao” desta pasta usando a palavra-chave “Aqsa” em um sinalizador. A saída mostra os quatro arquivos de texto com a palavra "Aqsa" em seu texto, enquanto o diretório "Wao" foi evitado e não verificado.
$ grep -exclude-dir “Wao” -R “Aqsa”
Conclusão:
Usando o Ubuntu 20.04, já entendemos como e quando usar o comando grep -R. O comando grep é extremamente versátil e ajuda a localizar texto embutido em centenas de documentos.