精华内容
下载资源
问答
  • 例如查找PHP源码某个函数的具体实现 grep -rn "PHP_FUNCTION(socket_accept)" ./ext 转载于:https://www.cnblogs.com/web21/p/6022160.html

     

    例如查找PHP源码某个函数的具体实现

    grep -rn "PHP_FUNCTION(socket_accept)" ./ext

    转载于:https://www.cnblogs.com/web21/p/6022160.html

    展开全文
  • 1. grep是linux中最为常用的三大文本(`awk,sed,grep`)处理工具之一 2. grep它能使用`正则表达式`搜索文本,并把匹配的行打印出来。 3. grep全称是Global Regular Expression Print,表示全局正则表达式打印,它...

    grep简介

    1. grep是linux中最为常用的三大文本(awk,sed,grep)处理工具之一
    2. grep它能使用正则表达式搜索文本,并把匹配的行打印出来。
    3. grep全称是Global Regular Expression Print,表示全局正则表达式打印,它的使用权限是所有用户。
    4. grep家族总共有三个:grep,egrep,fgrep(自己了解区别)

    grep语法

    grep pattern [file...]

    • grep "搜索字符串" [filename]
    • grep "正则表达式" [filename]
    • 在文件中搜索所有 pattern 出现的位置, pattern 既可以是要搜索的字符串,也可以是一个正则表达式.
    • 注意:在输入要搜索的字符串时最好使用双引号/而在模式匹配使用正则表达式时,注意使用单引号

    grep常用选项

    选项 描述
    -E 开启扩展(Extend)的正则表达式
    -i 忽略大小写(ignore case)
    -r 递归查找
    -R 查找所有文件包含子目录
    -v 反过来(invert),只打印没有匹配的,而匹配的反而不打印
    -n 显示行号
    -w 被匹配的文本只能是单词,而不能是单词中的某一部分,如文本中有liker,而我搜寻的只是like,就可以使用-w选项来避免匹配liker
    -c 显示总共有多少行被匹配到了,而不是显示被匹配到的内容,注意如果同时使用-cv选项是显示有多少行没有被匹配到。
    -o 只显示被模式匹配到的字符串。
    –color 将匹配到的内容以颜色高亮显示。
    -A n 显示匹配到的字符串所在的行及其后n行,after
    -B n 显示匹配到的字符串所在的行及其前n行,before
    -C n 显示匹配到的字符串所在的行及其前后各n行,context
    示例
    • 查询/home/tomcat10086/logs/catalina-2019-12-03.out 文件中 所有包含‘csv’的行
      在这里插入图片描述
    • 查询/home/tomcat10086/logs/catalina-2019-12-03.out 文件中 所有‘csv’
      在这里插入图片描述
    • 查询/home/tomcat10086/logs/catalina-2019-12-03.out 文件中 所有包含‘csv’的行并显示行号在这里插入图片描述

    模式匹配

    1. 直接输入要匹配的字符串,这个可以用fgrep(fast grep)代替来提高查找速度,比如我要匹配一下error.txt文件中printf的个数:fgrep -c "printf" error.txt

    2. 使用基本正则表达式,下面谈关于基本正则表达式的使用

    主要参数

    选项 描述
    \ 忽略正则表达式中特殊字符的原有含义
    ^ 匹配正则表达式的开始行
    $ 匹配正则表达式的结束行
    < 从匹配正则表达 式的行开始
    > 到匹配正则表达式的行结束
    [ ] 单个字符,如[A]即A符合要求
    [ - ] 范围,如[A-Z],即A、B、C一直到Z都符合要求 。
    . 任意一个字符
    * 有字符,长度可以为0

    grep命令使用简单实例

    # 显示所有以d开头的文件中包含 搜索字符串的行。
    grep ‘搜索字符串’ d*
    # 显示在aa,bb,cc文件中匹配搜索字符串的行。
    grep ‘搜索字符串’ aa bb cc
    # 显示所有包含每个字符串至少有5个连续小写字符的字符串的行。
    grep[a-z]\{5\}’ aa
    # 如果west被匹配,则es就被存储到内存中,并标记为1,然后搜索任意个字符(.*),这些字符后面紧跟着 另外一个es(\1),找到就显示该行。如果用egrep或grep -E,就不用”\”号进行转义,直接写成’w(es)t.*\1′就可以了。
    grep ‘west.*\1′ aa
    # 多个文件查询
    grep "sort" *.doc       #输出以doc结尾文件中包含 sort 的行
    #行匹配:输出匹配行的计数
    grep -c "48" data.doc   #输出文档中含有48字符的行数
    #显示匹配行和行数
    grep -n "48" data.doc       #显示所有匹配48的行和行号
    #显示非匹配的行
    grep -vn "48" data.doc      #输出所有不包含48的行
    #显示非匹配的行
    grep -vn "48" data.doc      #输出所有不包含48的行
    #大小写敏感
    grep -i "ab" data.doc       #输出所有含有ab或Ab的字符串的行
    

    grep命令使用复杂实例

    # 不区分大小写地搜索。默认情况区分大小写,
    grep -i pattern files 
    # 只列出匹配的文件名
    grep -l pattern files 
    # 列出不匹配的文件名
    grep -L pattern files 
    # 只匹配整个单词,而不是字符串的一部分(如匹配’magic’,而不是’magical’),
    grep -w pattern files 
    # 匹配的上下文分别显示[number]行
    grep -C number pattern files
    # 查找当前目录(包含子目录)的字符串:
    grep -r pattern  *
    # 查找当前目录(包含子目录)的字符串,并输出行号:
    grep -rn pattern *
    # 显示匹配 pattern1 或 pattern2 的行
    grep pattern1 | pattern2 files 
    # 显示既匹配 pattern1 又匹配 pattern2 的行
    grep pattern1 files | grep pattern2 
    # 即可显示行号信息
    grep -n pattern files  
    # 可查找总行数
    grep -c pattern files  
    

    正则表达式的应用 (注意:最好把正则表达式用单引号括起来)

    # \< 和 \> 分别标注单词的开始与结尾。
    #‘^’:指匹配的字符串在行首
    #‘$’:指匹配的字符串在行尾
    
    grep man *  # 会匹配 ‘Batman’、’manic’、’man’等,
    grep ‘\<man’ *  # 匹配’manic’和’man’,但不是’Batman’,
    grep ‘\<man\>#只匹配’man’,而不是’Batman’或’manic’等其他的字符串。
    grep '[239].' data.doc  #输出所有含有以2,3或9开头的,并且是两个数字的行
    grep '^[^48]' data.doc      #不匹配行首是48的行
    #使用扩展模式匹配
    grep -E '219|216' data.doc
    

    cat/more/tail 与 grep组合使用

    • cat+grep
    # 搜索  catalina-2019-12-03.out 文件中 所有包含  'csv' 的行
    cat -n catalina-2019-12-03.out | grep 'csv'
    
    • more +grep
    # 搜索  catalina-2019-12-03.out 文件中 所有包含  'csv' 的行
    more   catalina-2019-12-03.out | grep 'csv'
    
    • tail +grep
    # 动态搜索  catalina-2019-12-03.out 文件中 所有包含  'csv' 的行
    tail -f catalina-2019-12-03.out | grep 'csv'
    

    展开全文
  • 利用grep命令查找文件内容: 假如在目录~/Documents/RRPN_ROOT/caffe-fast-rcnn/src/caffe/layers下,有很多layer文件,我想查找文件内容中含有"rotate"字样的layer,于是进入目录里: grep -rn 'rotate' * '*'号 :...

    利用grep命令查找文件内容:

    假如在目录~/Documents/RRPN_ROOT/caffe-fast-rcnn/src/caffe/layers下,有很多layer文件,我想查找文件内容中含有"rotate"字样的layer,于是进入目录里:

    grep -rn 'rotate' *
    

    '*'号 : 表示当前目录所有文件,也可以是某个文件名
    -r 是递归查找
    -n 是显示行号
    -R 查找所有文件包含子目录
    -i 忽略大小写
    下面是一些有意思的命令行参数:
    grep -i pattern files :不区分大小写地搜索。默认情况区分大小写,
    grep -l pattern files :只列出匹配的文件名,
    grep -L pattern files :列出不匹配的文件名,
    grep -w pattern files :只匹配整个单词,而不是字符串的一部分(如匹配‘magic’,而不是‘magical’),
    grep -C number pattern files :匹配的上下文分别显示[number]行,
    grep pattern1 | pattern2 files :显示匹配 pattern1 或 pattern2 的行,
    grep pattern1 files | grep pattern2 :显示既匹配 pattern1 又匹配 pattern2 的行。
    这里还有些用于搜索的特殊符号:

    < 和 > 分别标注单词的开始与结尾。
    例如:
    grep man * 会匹配 ‘Batman’、‘manic’、‘man’等,
    grep ‘<man’ * 匹配‘manic’和‘man’,但不是‘Batman’,
    grep ‘<man>’ 只匹配‘man’,而不是‘Batman’或‘manic’等其他的字符串。
    ‘^’:指匹配的字符串在行首,
    ‘$’:指匹配的字符串在行尾,

    参考:
    https://www.cnblogs.com/wangkongming/p/4476933.html
    https://www.cnblogs.com/zhangmo/p/3571735.html

    展开全文
  • 区别: 在使用linux时,经常需要进行文件查找。其中查找命令主要有...grep是根据文件内容进行查找,会对文件的每一行按照给定的模式(patter)进行匹配查找。 一.find命令 基本格式:find path expression ...


    区别:

    1. 在使用linux时,经常需要进行文件查找。其中查找的命令主要有find和grep。两个命令是有区的。
    2. find命令是根据文件的属性进行查找,如文件名,文件大小,所有者,所属组,是否为空,访问时间,修改时间等。
    3. grep是根据文件的内容进行查找,会对文件的每一行按照给定的模式(patter)进行匹配查找。

      一.find命令

    基本格式:find path expression

    1. 按照文件名查找

        (1)find / -name httpd.conf  #在根目录下查找文件httpd.conf,表示在整个硬盘查找
        (2)find /etc -name httpd.conf  #在/etc目录下文件httpd.conf
        (3)find /etc -name 'srm'  #使用通配符(0或者任意多个)。表示在/etc目录下查找文件名中含有字符串‘srm’的文件
        (4)find . -name 'srm
    '   #表示当前目录下查找文件名开头是字符串‘srm’的文件

    2.按照文件特征查找     

        (1)find / -amin -10   # 查找在系统中最后10分钟访问的文件(access time)
        (2)find / -atime -2   # 查找在系统中最后48小时访问的文件
        (3)find / -empty   # 查找在系统中为空的文件或者文件夹
        (4)find / -group cat   # 查找在系统中属于 group为cat的文件
        (5)find / -mmin -5   # 查找在系统中最后5分钟里修改过的文件(modify time)
        (6)find / -mtime -1   #查找在系统中最后24小时里修改过的文件
        (7)find / -user fred   #查找在系统中属于fred这个用户的文件
        (8)find / -size +10000c  #查找出大于10000000字节的文件(c:字节,w:双字,k:KB,M:MB,G:GB)
        (9)find / -size -1000k   #查找出小于1000KB的文件

    3.使用混合查找方式查找文件

        参数有: !,-and(-a),-or(-o)。

        (1)find /tmp -size +10000c -and -mtime +2   #在/tmp目录下查找大于10000字节并在最后2分钟内修改的文件
       (2)find / -user fred -or -user george   #在/目录下查找用户是fred或者george的文件文件
       (3)find /tmp ! -user panda  #在/tmp目录中查找所有不属于panda用户的文件
      

    二、grep命令

    基本格式:find expression

    1.主要参数

        [options]主要参数:
        -c:只输出匹配行的计数。
        -i:不区分大小写
        -h:查询多文件时不显示文件名。
        -l:查询多文件时只输出包含匹配字符的文件名。
        -n:显示匹配行及行号。
        -s:不显示不存在或无匹配文本的错误信息。
        -v:显示不包含匹配文本的所有行。

        pattern正则表达式主要参数:
        \: 忽略正则表达式中特殊字符的原有含义。
        ^:匹配正则表达式的开始行。
        $: 匹配正则表达式的结束行。
        \<:从匹配正则表达 式的行开始。
        \>:到匹配正则表达式的行结束。
        [ ]:单个字符,如[A]即A符合要求 。
        [ - ]:范围,如[A-Z],即A、B、C一直到Z都符合要求 。
        .:所有的单个字符。
        * :有字符,长度可以为0。

    2.实例 

      (1)grep 'test' d*  #显示所有以d开头的文件中包含 test的行
      (2)grep ‘test’ aa bb cc    #显示在aa,bb,cc文件中包含test的行
      (3)grep ‘[a-z]{5}’ aa   #显示所有包含每行字符串至少有5个连续小写字符的字符串的行
      (4)grep magic /usr/src  #显示/usr/src目录下的文件(不含子目录)包含magic的行
      (5)grep -r magic /usr/src  #显示/usr/src目录下的文件(包含子目录)包含magic的行

      (6)grep -w pattern files :只匹配整个单词,而不是字符串的一部分(如匹配’magic’,而不是’magical’),

      详细使用参见:http://www.cnblogs.com/end/archive/2012/02/21/2360965.html

    转载于:https://blog.51cto.com/whylinux/2043871

    展开全文
  • Linux下find命令和grep命令查找文件

    万次阅读 2017-11-24 17:39:04
    在使用linux时,经常需要进行文件查找。其中查找命令主要有find和grep。两个命令是有区的。... (2)grep是根据文件内容进行查找,会对文件的每一行按照给定的模式(patter)进行匹配查找。  一.find命令  基
  • linux下的find文件查找命令grep文件内容查找命令 linux下的find文件查找命令grep文件内容查找命令  在使用linux时,经常需要进行文件查找。其中查找命令主要有find和grep。两个命令是有区的。 区别:(1)find...
  • Linux grep命令详解:查找文件内容

    千次阅读 2019-06-24 15:59:59
    很多时候,我们并不需要列出文件的全部内容,而是从文件中找到包含指定信息的那些行,要实现这个目的,可以使用grep 命令grep 命令作为 Linux 文本处理三剑客的一员,另外两个是 sed 和 awk,它们会在后续章节...
  • Linux系统中搜索、查找文件中的内容,一般最常用的是grep命令,另外还有egrep命令,同时vi命令也支持文件内容检索。搜索某个文件里面是否包含字符串命令格式:grep "被查找的字符串" filename1例如:grep ...
  • 文件内容查找匹配指定字符串的行: $ grep "被查找的字符串" 文件名 例子:在当前目录里第一级文件夹中寻找包含指定字符串的 .in 文件 grep "thermcontact" /.in 从文件内容查找与正则表达式匹配的行: $ ...
  • linux下的find文件查找命令grep文件内容查找命令  在使用linux时,经常需要进行文件查找。其中查找命令主要有find和grep。两个命令是有区的。  区别:(1)find命令是根据文件的属性进行查找,如文件名,文件...
  • 搜索、查找文件当中的内容,一般最常用的是grep命令,另外还有egrep, vi命令也能搜索文件里面内容1:搜索某个文件里面是否包含字符串grep "search content" filename1eg:grep ORA utlspadv.sql例如,我们需要搜索、...
  • linux下的find文件查找命令grep文件内容查找命令 linux下的find文件查找命令grep文件内容查找命令 linux下的find文件查找命令grep文件内容查找命令  在使用linux时,经常需要进行文件查找。其中查找命令...
  • 1.grep命令用于不需要列出文件的全部内容,而是从文件中找到包含指定信息的那些行。 grep命令能够在一个或多个文件中,搜索某一特定的字符模式(也就是正则表达式),此模式可以是单一的字符、字符串、单词或句子。...
  • 区别:(1)find命令是根据文件的... (2)grep是根据文件内容进行查找,会对文件的每一行按照给定的模式(patter)进行匹配查找。  一.find命令  基本格式:find path expression  1.按照文件名查找  (1)find ...
  • 命令格式: grep -[选项] “pattern” 文件或目录 选项 含义 -r 是递归查找 -n 是显示行号 -R 查找所有文件包含子目录 -i 忽略大小写 -l 只列出匹配的文件名, -L 列出不匹配的文件名, -w 只...
  • linux下的find文件查找命令与grep文件内容查找命令 转载于和感谢:linux下的find文件查找命令与grep...2.3 使用混合查找方式查找文件 3.grep命令 3.1 主要参数 3.2 实例 前言: 在使用linux时,经常需要进行文件查...
  • 在使用linux时,经常需要进行文件查找。其中查找命令主要有find和grep。两个命令是有区的。... (2)grep是根据文件内容进行查找,会对文件的每一行按照给定的模式(patter)进行匹配查找。  ...
  • root@ubuntu:/home/zte# grep -i -r -n paramiko . ...查找当前目录下文件不区分大小写包含paramiko的文件 root@ubuntu:~# grep --help Usage: grep [OPTION]… PATTERN [FILE]… Search for PATTERN i...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,171
精华内容 868
关键字:

grep命令查找文件内容