vim编辑模式、vim命令模式、vim实践

vim编辑模式

编辑模式用来输入或修改文本内容,编辑模式除了Esc外其他键几乎都是输入

如何进入编辑模式

  • 一般模式输入以下按键,均可进入编辑模式,左下角提示 insert(中文为插入) 字样
    • i (当前光标位置前插入)
    • o(换下一行插入)
    • O (上一行插入)
    • a(当前光标位置后插入)
    • I(当前行行首)
    • A(当前行行尾插入)

vim命令模式

命令模式常用

命令作用
/word在光标之后查找一个字符串word,按n向后搜索下一个
?word在光标之后查找一个字符串word,按n向后搜索下一个
:n1,n2s/word1/word2/g(n=任意数字)在n1和n2行之间查找word1并替换为word2,不加g则只替换每行的第一个word1
:1,$s/word1/word2/g将文档中所有的word1替换为word2,不加g则只替换每行的第一个word1

ps:以上表格中最后两行word词中就包含 "/word" 的话则需要 \ 转义,或者换成 "#" "@" 等特殊字符;

例如 : ":1,$s#/home#testhome#g"

还有一些保存及vim其他常用命令

命令作用
:w保存当前文档
:q退出vim
:w!强制保存文本,在root用户下,即使文本只读也可以完成保存
:q!强制退出,所有的改动不会生效
:wq保存并退出
:set nu显示行号
:set nonu不显示行号
:nohl取消高亮
:x跟wq的用法一样,只是q会改动mtime,而x不会改动

vim实践

为了更高效的记住vim的操作使用,经常使用才会记得牢,我们可以自行模拟以下操作环境,然后开始操作,以下我们可以尝试阿铭老师为我们设计的步骤来实践,首先先将dnsmasq.conf复制到/mnt下,并且重命名为test_study.txt

[root@yolks1 ~]# cp /etc/dnsmasq.conf /mnt/test_study.txt
[root@yolks1 ~]# vim /mnt/test_study.txt

vim实践操作

分别向下、向右、向左、向上移动6个字符(6j;6l;6h;6k)
分别向下、向上翻两页(分别按两次Ctrl+F和Ctrl+B)
把光标移动到第49行(49G)
把光标移动到行尾,再移动到行首(Shift+4;Shift+6)
移动到本文件的最后一行(G)
移动到本文件的首行(gg)
搜索文件中出现的dnsmasq字符串,并数一下该字符串出现的次数(输入/dnsmasq,然后按n继续下一个)
把从第1行到第10行出现的dnsmasq替换成dns(:1,10s/dnsmasq/dns/g)
还原上一步操作(u)
把整个文件中所有的etc替换成cte(:1,$s/etc/cte/g)
把光标移动到第25行,删除字符串ly(输入25G后回车,然后按l(小写L)向右移动光标到ly位置然后按v再按l选中ly两个字符,最后按x)
还原上一步操作(u)
删除第50行(50G;dd)
还原上一步操作(u)
删除第37行至第42行的所有内容(37G;6dd)
还原上一步操作(u)
复制第48行的所有内容将其粘贴到第52行下面(48G;yy;52G;p(小写))
还原上一步操作(按两下u)
复制第37行至第42行的内容并将其粘贴到44行上面(37G;6yy;44G P(大写))
还原上一步操作(按两下u)
把第37行至第42行的内容并将其移动到19行下面(37G;6dd;19G p(小写))
还原上一步操作(按两下u)
把光标移动到首行,把第1行内容改为#!/bin/bash(先按gg把光标定位到第1行,然后按字母A,进入编辑模式,同时将光标移动到行末尾进行修改,完成操作后按Esc键)
在第1行下面插入新的一行,并输入#hello!(按o进入编辑模式,同时将光标下移另起一行,输入#hello!)
保存并退出(按Esc键,输入:wq或者是:x)

拓展

vim的特殊用法 http://www.apelearn.com/bbs/thread-9334-1-1.html

vim常用快捷键总结 http://www.apelearn.com/bbs/thread-407-1-1.html

vim快速删除一段字符 http://www.apelearn.com/bbs/thread-842-1-1.html

vim乱码 http://www.apelearn.com/bbs/thread-6753-1-1.html

小键盘问题 http://www.apelearn.com/bbs/thread-7215-1-1.html

vim加密 http://www.apelearn.com/bbs/thread-7750-1-1.html

转载于:https://my.oschina.net/yolks/blog/1833765

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值