Comment puis-je exclure les répertoires de grep -r?

Comment puis-je exclure les répertoires de grep -r?
Grep est en effet un utilitaire de shell terminal Linux / Unix qui recherche un document pour une séquence de caractères. Une expression régulière semble être le terme pour que le modèle textuel soit recherché. Il sort la ligne avec le résultat lorsqu'il détecte la même correspondance. Lors de la navigation sur d'énormes fichiers journaux, la requête Grep est dans la portée. Ainsi, Grep -R a été utilisé pour exclure les répertoires tout en utilisant certains mots clés. Discutons de grep -r dans ce tutoriel étape par étape.

Conditions préalables:

Soyez clair pour que toute distribution de Linux soit installée et configurée. Nous utilisons l'ubuntu 20.04 Système Linux pour implémenter ce sujet. D'un autre côté, vous devez également avoir des droits de l'utilisateur racine. Ouvrez votre terminal de commande pour commencer à travailler.

Exemple 01:

Lorsque vous ouvrez le terminal de commande, vous êtes actuellement à l'Ubuntu 20.04 Répertoire d'accueil de Linux System. Accédez à un répertoire de documents. Pour cela, vous devez utiliser la commande «CD» indiquée ci-dessous dans le shell de commande pour le faire, ainsi qu'un chemin de répertoire.

$ cd ~ / documents

Vous êtes maintenant dans le répertoire des documents de votre système Linux. Créons trois nouveaux fichiers dans le répertoire des documents. Pour créer de nouveaux fichiers de type texte, essayez la commande tactile ci-dessous dans le shell, suivie du nom d'un nouveau fichier. Vous pouvez voir que nous avons créé trois fichiers nommés «Un.txt »,« Nouveau.txt "et" tester.SMS."

$ touchez un.SMS
$ touchez nouveau.SMS
$ TOCK TEST.SMS

Vous devez ajouter des données de texte ou des informations dans chaque fichier séparément, comme vous pouvez le voir dans les images ci-dessous. Enregistrez maintenant tous les fichiers et fermez.

Revenez maintenant au terminal et énumérez tous les fichiers et dossiers répertoriés dans le répertoire des documents. Exécutez la commande «LS» simple pour le faire comme ci-dessous. Vous aurez une sortie de tous les fichiers et dossiers menti dans le répertoire des documents. Vous pouvez voir que les fichiers texte nouvellement créés et mis à jour sont également là.

$ ls

Maintenant, c'est à notre tour d'essayer une commande grep -r sur le répertoire des documents et ses fichiers ou dossiers. Nous utiliserons la commande grep -r pour exclure les répertoires tout en utilisant un mot-clé ou un mot unique. Nous aurons une commande qui recherchera ce mot particulier à partir de tous les fichiers résidant dans le dossier Documents, sauf un répertoire, qui a été donné pour exclure dans la commande. Nous allons donc exclure le répertoire «WAO» actuellement présent dans le répertoire des documents. Alors, essayez la commande grep ci-dessous pour exclure le répertoire «WAO» avec l'indicateur -r, qui a été utilisé pour la fonction récursive, et «AQSA» a été utilisé comme mot clé à rechercher dans les fichiers. La sortie dans l'instantané ci-dessous affiche le texte à partir de deux fichiers: «Tester.txt "et" Nouveau.txt, «avoir le texte« aqsa »dans leurs données et le répertoire« wao »n'a pas été vérifié en raison de l'exclusion dans la commande. Cependant, le répertoire «WAO» a également des fichiers texte qui sont évités pour être vérifiés.

$ grep -exclude-di "wao" -r "aqsa"

Regardons les deux fichiers. Essayez la commande Cat pour voir le fichier «Nouveau.txt "contient le mot-clé" AQSA."

$ Cat New.SMS

L'autre fichier, «Test.txt », contenant le mot clé« AQSA », a été affiché en utilisant la commande Cat ci-dessous.

$ test de chat.SMS

Excluons maintenant le même répertoire «Wao» du dossier Documents à l'aide d'un autre mot-clé, «Brave», s'il se trouve dans des fichiers. Alors, essayez la commande grep ci-dessous pour exclure le répertoire comme ci-dessous. L'image de sortie montre les deux sorties correspondantes pour le mot-clé «courageux» dans deux fichiers, «Tester.txt »et« un.SMS."

$ grep -Exclude-Dir «documents / wao» -r «Brave."

Vous pouvez voir le fichier «un.txt ”contient le mot-clé« courageux »en utilisant la commande CAT.

$ Cat One.SMS

La sortie ci-dessous montre le fichier «Test.txt », qui contient le mot-clé« courageux »avec l'utilisation de l'instruction du chat.

$ test de chat.SMS

Exemple 02:

Passons à la sous-direction «Wao» du dossier Documents en utilisant la commande «CD» dans le shell.

$ cd ~ / documents / wao

Créons trois nouveaux fichiers, «Bin.txt, "" avait.txt "et" sec.txt ”dans le répertoire« wao »tout en utilisant la commande tactile indiquée ci-dessous. Ajoutez des données de texte dans tous les fichiers, enregistrez-les puis fermez-les.

$ tactile bac.SMS
$ touch avait.SMS
$ Touch Sec.SMS

Lisons tous les répertoires à l'aide de la commande «LS» comme ci-dessous. Vous y trouverez les trois fichiers nouvellement créés.

$ ls -a

Essayons la même instruction GREP dans votre terminal de commande pour exclure le répertoire «wao» tout en utilisant un autre mot-clé «I» comme correspondance comme ci-dessous.

$ grep -Exclude-Dir «documents / wao /» -r «i»

Maintenant, la sortie de cette commande affiche le mot-clé «i» dans les fichiers conservés dans les documents de dossier tandis que le répertoire «WAO» a été ignoré à l'aide du mot-clé «Exclude-Dir».

Excluons maintenant le même répertoire «Wao» en utilisant un autre mot clé, «Rimsha», de la commande grep illustrée ci-dessous dans le terminal. Le snap de sortie ne montre aucune sortie car le mot clé «Rimsha» n'a été trouvé dans aucun des fichiers situés dans le dossier Documents.

$ grep -Exclude-Dir «Documents / wao» -r «rimsha»

Exemple 03:

Accédez au dossier Documents en utilisant d'abord la commande «CD» comme en dessous.

$ cd ~ / documents

Énumérons tous les fichiers et dossiers de documents du répertoire à l'aide de la commande «LS» ci-dessous. La sortie affiche du texte et d'autres fichiers ainsi qu'un seul sous-répertoire, «Wao."

$ ls

Utilisez la même commande grep pour exclure le répertoire «WAO» de ce dossier en utilisant le mot-clé «AQSA» dans un drapeau. La sortie montre les quatre fichiers texte ayant le mot «aqsa» dans leur texte tandis que le répertoire «wao» a été évité et non vérifié.

$ grep -exclude-di "wao" -r "aqsa"

Conclusion:

Utilisation d'Ubuntu 20.04, nous comprenons déjà comment et quand utiliser la commande grep -r. La commande grep est extrêmement polyvalente et aide à localiser le texte intégré dans des centaines de documents.