- 5.1 vim介绍 5.2 vim颜色显示和移动光标
- 5.3 vim一般模式下移动光标
- 5.4 vim一般模式下复制、剪切和粘贴
vim 是vi的升级版本
vim 带有颜色显示
安装vim : yum install -y vim-enhanced
vim分三种模式:一般模式、编辑模式、命令模式
一般模式: dd,yy,pp,
编辑模式:i,a,
命令模式: q,wq!,q!,set nu,set nonu;nohl(no highlight不高亮);
x也可以保存退出,类似wq;
如果无操作wq会保存mtime更改的时间
x不会保存更改的时间;
配置文件是带有颜色的,复制到别的地方就没有颜色了。
有的文件会跟不同文件类型,颜色显示不同;
快捷键:
gg 跳到开头第一行;
G 移动到行尾;
shift+o 光标指向开头第一行之前,并进入编辑模式;
h j k l 左下上右 方向键
空格键 ,向右移动;
数字+空格 : 1一次向右移动多少个字符;
向上翻页:ctrl + f (forward)
向下翻页: ctrl+b (back)
nG (n是数字) 移动到第几行
数字0或者shift+6移动到本行行首;
shift+4 移动到本行行尾;
复制 yy ; 3 yy 复制下面3行,p粘贴到下面,P粘贴到上面;
粘贴 pp;
剪切:5 dd 剪贴下面5行,p粘贴到下面,P粘贴到上面;
撤销 u
返回撤销:control+r
删除一行 dd
任意位置选择字符: v 选中之后再做操作
X表示向前删除一个字符
x表示向后删除一个字符
nx表示向后删除n个字符
进入编辑模式
小写i在当前字符前插入
大写I 在光标所在行的行首插入
大写O 在光标上面一行插入编辑
小写o在光标下面一行插入编辑
小写a 在光标后面插入写(a是after的缩写)
大写A在光标所在行的行末插入编辑
/ 光标之后查找匹配字符串 --- /word ----- shift + n 向上查找
?光标之前查找特定字符串----?word
1,100s/User/xiaobo/g------1到100行,s表示开始替换,把User替换成xiaobo , g 全局替换global
不加g,只会替换第一个;
把aa替换为bb,查找字符串并替换:%s /aa/bb/g -----%表示所有行
全部替换: 1,$s/ftp/xiaobo/g -----$表示一直到末行,所有的;
/etc/hosts/xiaobo.com 把字符/etc/hosts替换为xiaobo.com
1,$s//etc/hosts/xiaobo.com/g
其中表示脱义,把/etc/hosts识别为字符串
也可以这样写:
1,$s#/etc/hosts#xiaobo.com#g
实践:
# cp /etc/dnsmasq.conf /tmp/1.txt
#vim /tmp/1.txt
不高亮nohl
(1) 分别向下、向右、向左、向上移动6个字符(6j 6l 6h 6k)。
(2) 分别向下、向上翻两页(分别按两次ctrl+f和ctrl+b)。
(3) 把光标移动到第49行(49G)。
(4) 把光标移动到行尾,再移动到行首(Shift+4, Shift+6)。
(5) 移动到1.txt文件的最后一行(G)。
(6) 移动到文件的首行(gg)。
(7) 搜索文件中出现的“dnsmasq”,并数一下该字符串出现的次数(/dnsmsq 然后按n)。
(8) 把从第1行到第10行出现的dnsmasq替换成dns(:1,10s/dnsmasq/dns/g)。
(9) 还原上一步操作(u)。
(10) 把整个文件中所有的etc替换成cte(:1,$s/etc/cte/g)。
(11) 把光标移动到第25行,删除字符串 “ly”(25G 然后按l向右移动光标找到"ly",按v选中,然后按x)。
(12) 还原上一步操作(u)。
(13) 删除第50行(50G dd)。
(14) 还原上一步操作(u)。
(15) 删除第37-42行的所有内容(37G 6dd)。
(16) 还原上一步操作(u)。
(17) 复制第48行的内容并粘贴到第52行下面(48G yy 52G p)。
(18) 还原上一步操作(u)。
(19) 复制第37-42行的内容并粘贴到第44行上面(37G 6yy 44G P)。
(20) 还原上一步操作(按u)。
(21) 把第37-42行的内容移动到第19行下面(37G 6dd 19G p)。
(22) 还原上一步操作(按u)。
(23) 把光标移动到首行,把第1行内容改为“#!/bin/bash”(先按gg,把光标定位到第1行,然后按字母A,进入编辑模式,同时>光标到行末尾,进行修改操作,完成后按ESC)。
(24) 在第1行下面插入新的一行,并输入“# Hello!”(按o进入编辑模式,同时光标向下另起一行,输入“# Hello!”)。
(25) 保存文档并退出(按Esc键,输入“:wq”)。