Linux中的VI编辑器、正则和重定向简介2018.03.14

一、vim编辑器的工作模式

1.      vim编辑器的三种工作模式

一般模式、编辑模式、命令行模式

2.      三种不同模式之间的切换


3.      文件内容查找

    /word  从上而下在文件中查找字符串“word”

    ?word  从下而上在文件中查找字符串“word”

    n      定位下一个匹配的被查找字符串

    N      定位上一个匹配的被查找字符串

4.      保存文件及退出vi编辑器

      保存文件:1):w

                       2):w/root/newfile   另存为其他文件

      退出vi:     1):q               未修改退出

                        2):q!              放弃对文件内容的修改,并退出

      保存文件退出vi   :wq

5.      文件内容替换

      :%s/old/new/g     在整个文件范围内替换所有的字符“old”为“new”

       :  %s/old/new/gc    加上c后,增加的功能为替换时需用户进行确认

 

6.      命令模式的部分常用重要命令

      O:移动到该行首                    $:移动到该行尾

      G:移动到文件的最后行              nG:移动至文件第n行

      dd: 删除光标所在行                ndd:删除包括光标所在行的n行

       u:恢复刚才被修改的文本

       Y:复制到当前行的编辑缓冲区        nY:复制当前行开始的n行至编辑缓冲区

       p:将编辑缓冲区的内容粘贴到光标后的一行

       P:将编辑缓冲区的内容粘贴到光标前一行

       :set nu  显示行号                   :setnonu     不显示行号

二、正则表达式

1.      相关概念

      元字符:描述字符的字符,它用于对字符表达式的内容、转换及各种操作信息描述

      正则表达式:是由一系列字符和元字符构成的字符串,简称RE(Regular Expression),它的主要功能是文本查询和字符串操作,它可以匹配文本的一个字符或字符集合。

  

2.通配符

      *:匹配任意多个字符(0或者多个)

      ?:匹配任意一个字符

      [...]:匹配中括号内出现的任意一个字符

      [!...]:不匹配中括号内出现的任意一个字符  

2.  基本正则表达式元字符(sed,grep,awk等工具)

       1)字符匹配:  

                             . :匹配任意单个字符

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

                             [^]:匹配指定范围外的任意单个字符

                        [[:digit:]] [[:lower:]] [[:upper:]][[:alpha:]] [[:alnum:]] [[:apace:]]

        2)匹配次数:   

                        *:匹配前面的字符任意次

                        .*:任意长度任意字符

                        \?:匹配前面字符串0次或者1次,即可有可无(扩展)

                        \+:匹配前面的字符至少1次(扩展)

                        \{m\}:匹配前面字符m次(扩展)

                        \{m,n\}:匹配前面字符至少m,至多n次(扩展)

        3)位置锚定:   

                        ^:行首锚定

                         $行尾锚定

                       ^PATTERN$:用于匹配整行

                       ^$:空行

                       \<:词首锚定,用于单词模式的左侧

                       \>:词尾锚定,用于单词模式的右侧

                       \<PATTERN\>:匹配整个单词  

3.   正则和通配符注意

                  *在通配符和正则表达式中有其不一样的地方,在通配符中*可以匹配任意的0个或多个字符,而在正则表达式中他是重复之前的一个或者多个字符,不能独立使用的。比如通配符可以用*来匹配任意字符,而正则表达式不行,他只匹配任意长度的前面的字符   



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值