Maison php教程 PHP开发 grep 常用命令

grep 常用命令

Dec 13, 2016 pm 02:34 PM
grep

这个--include选项, 可以这样使用:
grep -rn --include='*.c' --include='*.h' re .

可以指定多次, 如果真是上面的这种情况,  其实可以用
grep -rn --include='*.[ch]' re .

但是, 如果源文件中含有C++源代码, 上面的方法就不凑效了, 因为[]中只能放一个字符.
grep -rn --include='*.{cpp,h}' 也是不行的.
此时需要不加引号的展开(由bash执行grep之前就已经完成, 可以通过set -x观察)

grep -rn --include=*.{cpp,h} re .

bash中对{A,B}这种形式的展开, 会忽略是否在当前目录下存在相应的文件. 这样的写法, 可以避免手指累残在命令行上.

 

高亮显示

grep --color=auto 'pattern'   'text'

 

echo -e '\e[34mhaha\e[m'  这样会输出带颜色的字符串 -e 表示特殊处理 \e 这个 \e必须跟着 [符号

 

 

grep 常用 

grep [-acinv] '搜寻字符串' filename

参数说明:

-a :将 binary 档案以 text 档案的方式搜寻数据

-c :计算找到 '搜寻字符串' 的次数

-i :忽略大小写的不同,所以大小写视为相同

-n :顺便输出行号

-v :反向选择,亦即显示出没有 '搜寻字符串' 内容的那一行!

 

 

1.搜索特定的字符 

grep 'oo' pp.txt  以下仅仅用 pp 代表 pp.txt

 

查看显示字符的行数  

grep -n 'oo' pp 

 

查看非oo的字符 

grep -v 'oo' pp

 

查看大小写忽略的字符

grep -i 'oo' p

 

 

2.利用[]处理搜索结果

查看 tast 和 test的字符串

grep -n 't[ae]st' pp  这里[ae]只当一个字符处理 a 或者是 e 这样就能匹配 上面的要求

 

若是希望匹配 t(x)st 这个x是任意的字符的话,那么可以如下处理方式

grep 't[.]st' pp  .符号代表任意的字符

 

查看包含oo字符的信息

grep -n 'oo' pp

 

若是希望在oo之前没有g的字符信息

grep -n '[^g]oo' pp 这里的^就是取反的意思 非goo得字符

 

取前面非字符的字符

grep -n '[^a-zA-Z]oo' pp 

 

得到数字的字符的话

grep -n '[0-9]' pp  // 其实这个等同于  grep -n '[0-9[0-9]*' pp * 代表0个或是多个重复的信息

 

 

3.行首和行尾的特殊处理 $^ 

若是希望取得第一行是 the 开头的字符行

grep -n '^the' pp 

 

若是希望取得以英文字符开头的字符

grep -n '^[a-zA-Z]' pp

 

取得不是以英文字符开头的信息

grep -n '^[^a-zA-Z]' pp   // 里面的^是取反 外面的^是以上面开头

 

取得小数点结尾的行

grep -n '\.$' pp     //小数点是特殊字符 需要用\进行转义

注意在windows下 换行时 ^M 这个符号 

 

 

取得一个空行的方式

grep -n '^$' pp 这里就是取空行了

 

希望取得所有文档中非注释掉得内容的话 那么可如下

grep -v '^$' pp|grep -v ^#              第一个是取非空行的数据 第一个管道是取非#开头的数据

我像有时候更多的是取 #开头的行

grep -n '^#' pp 

 

4.任意字符和重复字符

. :绝对的任意字符

* :0个或是多个相同字符

 

要查看gf中间是两个字符的数据

grep -n 'g..f' pp

 

至少有一个是o的字符串

grep -n 'oo*' pp  //因为*代表0个或是多个

 

以g开头和结尾,中间至少一个o

grep -n 'goo*g' 

 

查找gg中间是任意字符的字符串

grep -n 'g.*g' pp 这里.就代表任意字符

 

5.限定符 {}

查看g和p之间存在两个连个o的字符串

grep -n 'go\{2,5\}p'

 

查找至少两个的字符创

grep -n 'go\{2,\}p' pp

 

查找只有两个的字符串

grep -n 'go\{2\}p' pp

 

 

6.重要的特殊字符

 

^word待搜寻的字符串(word)在行首!

范例:grep -n '^#' pp 搜寻行首为 # 开始的那一行!

 

 

word$待搜寻的字符串(word)在行尾!

范例:grep -n '!$' pp 将行尾为 ! 的那一行打印出来!

 

 

.代表任意的一个字符

范例; grep -n 'g.' pp 将是g开头的两个字符打印出来

 

 

\将特殊字符转义

范例:grep -n \' pp  搜索有单引号的那一行

 

*:匹配0个或是多个字符

grep -n 'o*' pp 匹配拥有零个或是多个o的字符

 

\{n,m\} :匹配的个数

grep -n 'o\{2\}' pp 打印出拥有两个oo的字符

 

[]匹配单个字符 

  1.[list] : [abl] 匹配 abl中任意一个

  2.[^xx]:对其中的字符进行取反  这里只能对的那个字符进行取反 若是希望是多个字符取反的话 还需要看看

  3.[char1-char2]:匹配某个范围之内的数据 例如 [a-z][A-Z][0-9]

 

7.扩张的grep --- > egrep  这个等同于 grep -E 

 

grep -v '^$' pp | grep -v '^#'

通过egrep来表示就是

egrep -v '^$|^'

 

8.查找内容有“或”的关系:

#查找数字为23或24的内容,并显示内容与行号

grep -E '23|24' * -n

 

9.查找data.txt文件有多少个空行:

grep '^$' data.txt -c

 

10.查询当前目录中还有多少个目录:

ls -l | grep '^d'

 

11.查找data.txt文件字符串尾部为a的内容

grep 'a$' data.txt -i -n

 

$ grep "sort it" *      (#或在所有文件中查询单词“sort it”)


接下来的所有示例是指在单个文件中进行查询
 行匹配
$ grep -c "48" data.f
$ 4                      (#g r e p返回数字4,意义是有4行包含字符串“4 8”。)
$ grep "48" data.f          (#显示包含“4 8”字符串的4行文本)

 显示满足匹配模式的所有行行数:
[root@mypc oid2000]# grep -n 1234 111.txt 
1:1234
3:1234ab

6. 精确匹配
[root@mypc oid2000]# grep "1234\>" 111.txt 
1234

7. 查询空行,查询以某个条件开头或者结尾的行。
结合使用^和$可查询空行。使用- n参数显示实际行数
[root@mypc oid2000]# grep -n "^$" 111.txt    (返回结果 2:   #说明第二行是空行)
[root@mypc oid2000]# grep -n "^abc" 111.txt (#查询以abc开头的行)
[root@mypc oid2000]# grep -n "abc$" 111.txt (#查询以abc结尾的行)

8. 匹配特殊字符,查询有特殊含义的字符,诸如$ . ' " * [] ^ | \ + ? ,必须在特定字符前加\。
[root@mypc oid2000]# grep "\." 111.txt (#在111.txt中查询包含“.”的所有行)
[root@mypc oid2000]# grep "my\.conf" 111.txt (#查询有文件名my. c o n f的行)

9. 目录的查询
[root@mypc oid2000]# ls –l |grep “^d”   (#如果要查询目录列表中的目录)
[root@mypc oid2000]# ls –l |grep “^d[d]” (#在一个目录中查询不包含目录的所有文件)
[root@mypc]# ls –l |grep “^d…..x..x” (#查询其他用户和用户组成员有可执行权限的目录集合)

10.排除自身

ps -ef|grep telnet | grep -v grep (在显示的进程中抽出“telnet”进程;并丢弃ps中的grep进程)

 

egrep的几个特殊字符

+ :至少一个或是多个   egrep -n 'go+d' pp

?:0个或是一个        egrep -n 'go?d' pp

| :用或的方式来查找   egrep -n 'go|good' pp 查找go或是good

():找出群组的数据      egrep -n 'g(o|pp)d' pp 查看god 或是gppd  这个类似于 [] 但是比[]强大的是可以是多个字符进行乱换

egrep -n 'd(r|o)e' pp  ===== grep -n 'd[ro]e' pp 


Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment utiliser la commande grep pour l'analyse des journaux sous Linux ? Comment utiliser la commande grep pour l'analyse des journaux sous Linux ? Jul 29, 2023 pm 02:12 PM

Comment utiliser la commande grep pour l’analyse des journaux sous Linux ? Introduction : Les journaux sont des enregistrements importants générés pendant le fonctionnement du système, pour le fonctionnement, la maintenance et le dépannage, l'analyse des journaux est une tâche essentielle. Dans le système d'exploitation Linux, la commande grep est un puissant outil de recherche de texte très adapté à l'analyse des journaux. Cet article explique comment utiliser la commande grep couramment utilisée pour l'analyse des journaux et fournit des exemples de code spécifiques. 1. Introduction à la commande grep grep est un fichier dans le système Linux

Comment utiliser la commande grep pour interroger le contenu d'un premier et d'un dernier fichier spécifique Comment utiliser la commande grep pour interroger le contenu d'un premier et d'un dernier fichier spécifique Jan 09, 2024 am 09:45 AM

Si vous souhaitez afficher le contenu d'un fichier dans un système LINUX, comment afficher le premier et le dernier contenu d'un fichier spécifié ? Jetons un coup d'œil au didacticiel sur l'utilisation de grep pour interroger le contenu du premier et du dernier fichier spécifiés. 1. Ouvrez LINUX, ici nous pouvons utiliser le système d'exploitation UBUNTU. 2. Recherchez TERMINAL dans la barre des tâches de gauche et ouvrez la fenêtre du terminal. 3. Ajoutez ^ après grep pour spécifier le début d'une certaine ligne. 4. Ajoutez $ après le contenu après grep pour spécifier la fin d'une certaine ligne. 5. ^$ peut être utilisé en même temps pour spécifier le contenu nécessaire au début et à la fin d'une certaine ligne. 6. Si un caractère au milieu est manquant ou incorrect, il ne sera pas interrogé. 7. Utilisez avec -i pour ignorer les règles de casse. 8. Vous pouvez également utiliser -v

Présentation de la façon d'utiliser la commande grep pour afficher des informations contextuelles sous Linux Présentation de la façon d'utiliser la commande grep pour afficher des informations contextuelles sous Linux Jan 04, 2024 pm 04:41 PM

Cet article étudie principalement le contenu associé de grep affichant plusieurs lignes d'informations avant et après sous Linux. Les détails sont les suivants. Grep sous Unix/Linux standard contrôle le contexte via les paramètres suivants. grep-C5foofile affiche la ligne correspondant à la chaîne foo dans le fichier et les 5 lignes supérieures et inférieures affichent foo et les 5 premières lignes. affiche foo et les 5 dernières lignes pour afficher la version de grep. La méthode de numérotation est grep-V. Si vous souhaitez mettre à niveau, la méthode de mise à niveau : le dernier code source (page d'accueil de recherche Google ou Baidu), compilez-le et installez-le quelque part. tel que /home/aaa/bin/, puis utilisez / lorsque vous l'utiliserez à l'avenir home/aaa/.

Quelle est la syntaxe de la commande Linux grep Quelle est la syntaxe de la commande Linux grep May 14, 2023 pm 10:43 PM

La commande Linuxgrep est utilisée pour rechercher des chaînes qui répondent aux conditions dans les fichiers. La commande grep est utilisée pour rechercher les fichiers dont le contenu contient le style de modèle spécifié. Si le contenu d'un fichier correspond au style de modèle spécifié, la commande grep par défaut affichera la colonne contenant le style de modèle. Si aucun nom de fichier n'est spécifié ou si le nom du fichier est -, la commande grep lit les données du périphérique d'entrée standard. Syntaxe : paramètres grep : -a ou --text : n'ignorez pas les données binaires. -A ou --after-context= : En plus d'afficher la colonne conforme au style du modèle, et d'afficher le contenu après la ligne. -b ou --byte-offset : avant d'afficher la ligne qui correspond au style

Comment utiliser grep dans le système Linux ? Comment utiliser grep dans le système Linux ? Feb 19, 2024 pm 03:54 PM

Sous Linux, grep est un outil très courant et important. C'est une commande que tout ingénieur professionnel d'exploitation et de maintenance doit maîtriser, car elle peut trouver et filtrer rapidement le contenu des fichiers. Alors, comment utiliser grep dans le système Linux ? Jetons un coup d'œil à l'introduction à l'utilisation courante. 1. Utilisation de base La commande grep est principalement utilisée pour rechercher des lignes d'un modèle spécifié dans les fichiers. Par exemple, pour retrouver la ligne contenant « exemple » dans le fichier file.txt, vous pouvez utiliser la commande grep. grep 'exemple' file.txt grep affichera toutes les lignes contenant 'exemple'.​

Que fait la commande Linux grep ? comment utiliser? Que fait la commande Linux grep ? comment utiliser? Feb 19, 2024 pm 02:33 PM

Lors de la maintenance du système Linux, si vous souhaitez rechercher rapidement ce dont vous avez besoin dans le texte, la commande grep est un très bon choix. Elle est principalement utilisée pour rechercher des chaînes qualifiées dans les fichiers, permettant ainsi de gagner du temps et d'améliorer l'efficacité du travail. Alors, comment utiliser la commande grep dans le système Linux ? Jetons un coup d'œil à l'introduction détaillée. La commande Linux grep est utilisée pour rechercher des chaînes qui répondent aux conditions dans les fichiers. La commande grep est utilisée pour rechercher le contenu d'un fichier contenant un style spécifié et afficher les lignes contenant le style. Si aucun nom de fichier n'est spécifié, grep lira les données de l'entrée standard. grep est un puissant outil de recherche de texte qui aide les utilisateurs à localiser rapidement les informations clés. Syntaxe grep[-ab

Quelles sont les utilisations de grep sous Linux ? Quelles sont les utilisations de grep sous Linux ? Sep 05, 2023 am 11:01 AM

L'utilisation de grep sous Linux comprend l'utilisation de base, l'ignorance de la casse, la recherche d'expressions régulières, la recherche inversée, le comptage du nombre de lignes correspondantes, la recherche récursive, la sortie des numéros de ligne et la recherche à partir du flux d'entrée, etc. Introduction détaillée : 1. Utilisation de base L'utilisation de base de la commande grep est de rechercher les lignes contenant le modèle spécifié dans le fichier. Pour rechercher les lignes contenant "exemple" dans le fichier file.txt, vous pouvez exécuter la commande "grep". exemple" file.txt "; 2. Ignorer la casse Par défaut, grep est sensible à la casse et ainsi de suite.

Utilisation régulière de grep Utilisation régulière de grep Nov 16, 2023 am 10:29 AM

L'utilisation régulière de grep comprend : 1. Une correspondance simple ; 2. Des expressions régulières de base ; 3. L'utilisation de métacaractères ; 4. L'utilisation de caractères d'ancrage ; Introduction détaillée : 1. Correspondance simple, utilisez la commande grep suivie de la chaîne à faire correspondre ; 2. Expressions régulières de base, utilisez l'option -E pour activer les fonctions d'expression régulière étendues ; 3. L'utilisation de métacaractères, dans les expressions régulières, vous peut utiliser certains métacaractères pour représenter des caractères ou des jeux de caractères spécifiques ; 4. L'utilisation de caractères d'ancrage, etc.

See all articles