vim命令

  打开文件:

  vim [option]…    file…

  +#  打开文件后,直接让光标处于第#行的行首

   +  打开文件后,直接让光标处于最后一行

  +/pattern 打开文件后直接让光标处于第一个被pattern匹配到的行的行首

 

模式转换:

编辑模式--->输入模式

i:insert 在光标所在处输入

a: append 在光标所在处后面输入

o: 在当前光标所在行的下方新增一 个新行

I:  在当前光标所在行的行首输入

A:在当前光标所在行的行尾输入

O:在当前光标所在行的上方打开一个新行

c

C

 

输入模式-->编辑模式

    ESC

编辑模式-->末行模式

    :

末行模式-->编辑模式

    ESC,ESC

 

关闭文件:

    : q  退出

   :q!强制退出,不保存并退出

   :wq 保存修改并退出

   :x,保存并退出

    :  w/path/to/somewhere

   命令模式:ZZ,保存退出

 

  光标移动:

     单字符移动:

        h

        l:右

        j:下

        k:上

      可以和数字组合  : 5 j

      单词间移动:

         w:调至下一个单词的词首

         b:当前或前一个的词首

 e:当前或下一个词的词尾

      行内移动:

         0:绝对行首

^:第一个非空白字符

 $:绝对行尾

      行间移动:

          #G 跳转至由#指定行

           G 最后一行

           1Ggg 第一行

 

      句间移动:

          )上一句

        (下一句

      段落间移动:

         }上一段

         {下一段

 

编辑命令:

         x:删除光标所在处的字符

         #x:删除光标所在处向后的#个字符

 r:替换光标所在处的字符

 xp : 交换光标所在处的字符及后面字符的位置

 

 d:删除命令,可结合光标跳转字符,实现范围删除

   d$  删除光标所在处到行尾

   d^   删除光标所在处到行首(第一个非空白字符)

   d0   删除光标所在处到绝对行首

   dG   删除光标所在处下方所有的行到末尾

   dd:删除一行

   #dd:删除所在行后的#行

 

 粘贴命令:

p: 缓冲区存的如果为整行,则粘贴当前光标所在行的下方,否则,则粘贴至当前光标所在的后面

P: 缓冲区存的如果为整行,则粘贴当前光标所在行的上方,否则,则粘贴至当前光标所在的前面

 

复制命令:

 y:复制

   y$

   y0

   y^

 

yy  复制一行

#yy  指定数字复制多行

 

改变命令:

c:修改

    编辑模式---> 输入模式

    c$

    c^

    c0

 cc 删除整行并输入新内容

 #cc

 

撤销命令

   u:undo

  #u:撤销指定次数的操作

撤销此前的撤销

Ctrl+r

 

重复前一个编辑操作 ' . '

 

可视化模式:

  v:按照光标走过的区域选择

  V:选择矩形块

 

翻屏:

        ctrl+f:向文件尾部翻一屏

        ctrl+b:向文件首部翻一屏

        ctrl+d:向文件尾部翻半屏

        ctrl+u:向文件首部翻半屏

        Enter:下一行

 

末行模式:地址定界

     startend

           # 具体第#行,例如2表示第2

          #,# 从左侧#表示行起始,到右侧#表示行结尾

          #,+# 从左侧#表示的行起始,加上右侧#表示的行数

          . 当前行

          $ 最后一行

             . , $-1

          % 全文  相当于1,$

           /pat1/,/pat2/   从第一次被pat1模式匹配到的行开始,一直到第一次被pat2匹配到的行结束

 

使用方式:后跟一个编辑命令

          d

           y

           w /path/to/somewhere  将范围内的行另存至指定文件中

           r /path/from/somefile   在指定位置插入指定文件中的所有内容

 

查找:

       /pattern   从当前光标所在处向文件尾部查找

       ?pattern   从当前光标所在处向文件首部查找

        n 与命令同方向

        N 与命令反方向

 

查找并替换:

    s: 在末行模式下完成查找替换操作

       s/要查找的内容/替换为的内容/修饰符

            要查找的内容: 可使用模式

            替换为的内容:不能使用模式,但可以使用\1, \2… 等后向引用符号,还可以使用&引用前面查找时查找到的整个内容:

           修饰符:

                i  忽略大小写

                g  全局替换,默认情况下每一行只替换第一次出现

  查找替换中的分隔符/ 可替换为其他字符,例如  s@@@   s###

 

多文件模式:

   vim file1 file2 file3 ...

  

    next 下一个

     prev  上一个

     first 第一个

     last 最后一个

     qall 退出所有文件

     wqall 修改并退出所有文件

 

窗口分隔模式:

    vim -o file1  file2 ...   水平分隔

    vim -O file1  file2 ...   垂直分隔

在窗口间切换:Ctrl+w     上下左右箭头

      

单文件窗口分隔:

     Ctrl+w,s   split  水平分隔

     Ctrl+w,v  vertical   垂直分隔

  

定制vim工作特性:

       配置文件: 永久有效

      全局:/etc/vimrc

      个人:~/.vimrc

末行: 当前vim进程有效

 

 

窗口属性的定义:

显示行号

:setnu

:setnonu

          

        自动缩进

:setai

:setnoai

          

        忽略字符大小写

:setic

:setnoic

 

括号匹配

:setsm (show match)

:setnosm

 

语法高亮:

:syntaxon

:syntaxoff

 

高亮搜索:

:sethlsearch

:setnohlsearch

 

  set nohlsearch 关闭高亮显示,对当前shell有效

 

练习1:用查找替换命令删除/etc/grub2.cfg文件中的行首的空白字符

           %s/^[[:space:]]\+//

 

 

练习2:用查找替换命令为/etc/rc.d/init.d/functions文件的每行开头为空白字符的行的行首添加一个#

           %s/^[[:space:]]/#&/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值