grep基础应用

1.grep中的位置锚定,用于指定字符出现的位置

    ^ 锚定行首,^char

    

    $ 锚定行尾,char$

    

    ^$ 空白行

    

    \<char 锚定词首=\bchar

    

    char\> 锚定词尾=char\b

    

    grep分组

    \( \ )

    \(ab\)*xy  表示ab出现任意次,包括0次

    

    grep引用

        \1 后向引用,引用前面的第一个左括号以及与之对应的右括号中的模式所匹配的内容。

        \2

        ...

        \(a.b\)xy\1  eg: abbxyabb

        

2.grep常用选项

    -v:显示不能被模式匹配到的行

    -o:仅显示被模式匹配到的字符串而非整形

    -i:不区分大小写

    -E:支持扩展的正则表达式

    -A:

    -B:

    -C:

    

    

3.egrep 相当于grep -E

    使用扩展正则表达式来构建模式相当于grep -E

        . 任意单个字符

        [ ] 指定范围内任意单个字符 

        [^] 指定范围外任意单个字符

    

    匹配次数

        *

        

        +:匹配前面字符至少一次

        {m} 匹配前面字符m次

        {m,n} 匹配前面字符至少m次,至多n次

        {m,} 匹配前面字符至少m次

        {0,n} 匹配前面字符至多n次

        

     egrep中位置锚定

         ^ 行首

         $ 行尾

         \< = \b 锚定词首

         \> = \b 锚定词尾

         

     egrep分组 

         () 分组

           |  或者

           

4.fgrep : fast 不解析正则表达式

5.bash编程条件判断

    条件判断的常用判断类型

        整数测试

        文件测试

        字符测试

        

        $?

            0    表示测试正确

            1-255    表示错误

            

        布尔值 (真、假)

        逻辑运算

            

            

            非     

            

6.bash测试

    test EXPRESSION    

        [EXPRESSION]

        [[EXPRESSTION]]

        

7.bash中条件判断使用if

    单分支

        if 条件; then

            分支1 ;

        fi

        

    双分支

        if 条件; then

            分支1 ;

        else

            分支2 ;

        fi

             

     多分支

         if 条件; then

             分支1 ;

         elif

             分支2 ;

         elif

             分支3 ;

         ...

         else

             分支n ;

         fi

时间: 2024-10-06 17:59:42

grep基础应用的相关文章

grep基础

基本格式为: grep option pattern file-list grep命令用来抽出file-list中我们需要的数据,同时过滤掉那些不关心的内容.我们关心的内容体现在pattern中,它表现为一个字符串,或者是一个正则表达式,然后grep读取file-list的每一行内容,如果遇到匹配pattern的行,就把他输出到屏幕上:不匹配的那些就忽略掉. 先说pattern,当它是一个单独的字符串时,直接写就可以了:但是如果里面包含空格或其他分隔符,就需要用引号(单.双均可)括起来.当pat

grep基础命令练习及Find命令详解

定义一个对所有用户都生效的命令别名,例如 lftp='lftp 172.168.0.1/pub' ?在/etc/bashrc文件底部增加一行 alias lftp='lftp 172.168.0.1/pub' 显示/etc/passwd文件中不以/bin/bash结尾的行 egrep -v "/bin/bash$" /etc/passwd 找出/etc/passwd文件中,包含二位数字或者三位数的行 grep -E "\<[0-9]{2,3}\>" /e

基于Android设备的 Kali Linux渗透测试教程(内部资料)

试读样章下载地址:http://pan.baidu.com/s/1hqgPu3U 前  言 Kali Linux是业内最知名的安全渗透测试专用操作系统.它的前身就是业界知名的BackTrack操作系统.BackTrack在2013年停止更新,转为Kali Linux.Kali Linux集成了海量渗透测试.攻击等专用工具.通过系统更新,用户可以快速获取最新的各类工具.所以,Kali Linux是渗透测试专业人员的不二选择. 由于渗透目标多样化,使用传统形式的电脑PC或者笔记本并不是很方便.而智能

java web 开发三剑客 -------电子书

Internet,人们通常称为因特网,是当今世界上覆盖面最大和应用最广泛的网络.根据英语构词法,Internet是Inter + net,Inter-作为前缀在英语中表示“在一起,交互”,由此可知Internet的目的是让各个net交互.所以,Internet实质上是将世界上各个国家.各个网络运营商的多个网络相互连接构成的一个全球范围内的统一网,使各个网络之间能够相互到达.各个国家和运营商构建网络采用的底层技术和实现可能各不相同,但只要采用统一的上层协议(TCP/IP)就可以通过Internet

grep、sed、awk基础

grep grep :根据模式,搜索文本,并将符合模式的文本行显示出来, 使用基本正则表达式定义的模式来过滤文本的命令: -i :忽略大小写 --color :加上颜色, -v :显示没有被模式匹配到的行 -n:显示匹配到的行在文件中的行数 -w:精确匹配,只匹配整个单词,而不是字符串的一部分 -o :只显示被模式匹配到的字符串 -A #:after, 后#行 -B #: before, 前#行 -C #:context, 前后各#行 -c:显示一个文件被匹配到几行 -E :使用扩展正则表达式

grep命令的基础用法及进阶

bash 通配符: *: ?: []: 所有以m,n,r开头的以.conf结尾的文件 eg:[mnr].conf [^]:非[]中的 [[:space:]] [[:upper:]] [[:lower:]] [[:alnum:]] [[:digit:]] [[:punct:]] 通配符:需要说明的是:通配符看起来有点象正则表达式语句,但是它与正则表达式不同的,不能相互混淆.把通配符理解为shell 特殊代号字符就可. 而且涉及的只有,*,? [] ,{} 这几种. 字符              

linux基础之grep命令

Linux基础之grep命令 grep命令是linux下的行过滤工具,参数繁多,功能比较强大,用起来比较方便,下面就将grep及其egrep分模块讲述其功能. 1.Grep:根据模式搜索文本,并将符合模式的文本行显示出来 2.Grep的语法:Grep  [option]   PATTERN  [file-] Pattern: 文本字符和正则表达是元字符组合而成匹配条件 3.grep的常用选项: -i: 不区分字符的大小写(只适用于单字符): -I:字符的大写: --color: 匹配的串用高亮颜

grep与正则表达式基础

目录 grep 正则表达式 grep用法简介 我们介绍GREP的用法,主要用于匹配行,我们借助下面的正则表达式来介绍如何使用grep,还有就是正则表达式在linux中是极为重要的一部分. 1 命令:grep 2 格式:grep [option] "pattern" filename 3 选项: 4 -v:反向选择 5 -i:忽略大小写 6 -n:显示行号 7 -c:统计行数 8 -o:仅显示匹配到的字符串 9 -w:匹配整个单词 10 -q:不输出任何信息 11 -A 2:after

Linux学习资料-基础正规表示法(grep)

基础正规表示法:   -------------------------------------------------------------------------------- grep 语法: [root @test /root ]# grep [-acinv] '搜寻字符串' filename 参数说明: -a :将 binary 档案以 text 档案的方式搜寻数据 -c :计算找到 '搜寻字符串' 的次数 -i :忽略大小写的不同,所以大小写视为相同 -n :顺便输出行号 -v :