grep
Anglais ['grep] US ['grep]
[Calcul] Récupérer la commande de ligne cible
Commande Linux grep syntaxe
Fonction : La commande grep est utilisée pour rechercher les chaînes qui répondent aux conditions du fichier.
Syntaxe : grep [-abcEFGhHilLnqrsvVwxy][-A<Afficher le numéro de colonne>][-B<Afficher le numéro de colonne>][-C<Afficher le numéro de colonne>][-d<Effectuer une action>] [-e< Style de modèle>][-f<Fichier modèle>][--help][Style de modèle][Fichier ou répertoire...]
Commande Linux grep exemple
1. Dans le répertoire courant, recherchez le fichier contenant la chaîne de test dans le fichier avec le suffixe word file et imprimez la ligne de la chaîne. A ce moment, vous pouvez utiliser la commande suivante :
grep test *file
Le résultat est le suivant :
$ grep test test* #查找前缀有“test”的文件包含“test”字符串的文件 testfile1:This a Linux testfile! #列出testfile1 文件中包含test字符的行 testfile_2:This is a linux testfile! #列出testfile_2 文件中包含test字符的行 testfile_2:Linux test #列出testfile_2 文件中包含test字符的行
2. Recherchez les fichiers qui répondent aux conditions de manière récursive. Par exemple, pour rechercher les fichiers contenant la chaîne "update" dans tous les fichiers du répertoire spécifié /etc/acpi et ses sous-répertoires (si des sous-répertoires existent), et imprimer le contenu de la ligne où se trouve la chaîne, la commande utilisée est :
grep -r update /etc/acpi
Les résultats de sortie sont les suivants :
$ grep -r update /etc/acpi #以递归的方式查找“etc/acpi” #下包含“update”的文件 /etc/acpi/ac.d/85-anacron.sh:# (Things like the slocate updatedb cause a lot of IO.) Rather than /etc/acpi/resume.d/85-anacron.sh:# (Things like the slocate updatedb cause a lot of IO.) Rather than /etc/acpi/events/thinkpad-cmos:action=/usr/sbin/thinkpad-keys--update
3. Les exemples précédents consistent à rechercher et imprimer les lignes qui remplissent les conditions. Le paramètre "-v" peut être utilisé pour imprimer le contenu des lignes qui ne remplissent pas les conditions.
Recherchez les lignes qui ne contiennent pas test dans le fichier dont le nom de fichier contient test A ce moment, la commande utilisée est :
grep -v test *test*
Le résultat est le suivant :
$ grep-v test* #查找文件名中包含test 的文件中不包含test 的行 testfile1:helLinux! testfile1:Linis a free Unix-type operating system. testfile1:Lin testfile_1:HELLO LINUX! testfile_1:LINUX IS A FREE UNIX-TYPE OPTERATING SYSTEM. testfile_1:THIS IS A LINUX TESTFILE! testfile_2:HELLO LINUX! testfile_2:Linux is a free unix-type opterating system..