案例源自《鸟哥的Linux私房菜》
从http://linux.vbird.org/linux_basic/0310vi/man.config 下载文件man.config。请在/tmp这个目录下新建一个名为vitest的目录。进入vitest这个目录当中。将/ect/man.config复制到本目录下面。使用vi打开本目录下的man.config这个文件。
[Ian@muban ~]$ wget http://linux.vbird.org/linux_basic/0310vi/man.config
[Ian@muban ~]$ mkdir /tmp/vitest
[Ian@muban ~]$ cd /tmp/vitest/
[Ian@muban vitest]$ cp /etc/man.config man.config
[Ian@muban vitest]$ vi man.config
1.在vi中设置一下行号。
:set nu
2.移动到第58行,向右移动40个字符,请问你看到的双引号内是什么目录?
58G
40l
3.移动到第一行,并且向下查找一下“bzip2”这个字符串,请问它在第几行?
1G
/bzip2 #向下寻找一个名称为bzip2的字符串
此时按n向下搜索,按N向上搜索。
4.将50行到100行之间的“man”改为“MAN”,并且一个一个挑选是否需要修改,如何执行命令?如果在挑选过程中一直按“y”,结果会在最后一行出现改变了几个man呢?
:50,100s/man/MAN/gc
一直按”y”最终出现:
25 substitutions on 23 lines
5.修改之后,突然反悔了,要全部复原,有哪些方法?
u或:q!
6.复制65到73这九行的内容,并且粘贴到最后一行之后。
65G
9yy #复制9行
G #去最后一行
p #将已复制的数据在光标下一行粘贴
7.21到42行之间的开头为“#”符号的批准数据不要了,要如何删除?
21G
22dd #删除22行
8.将这个文件另存成一个man.test.config的文件名。
:w man.test.config
9.去到第27行,并且删除15个字符,结果出现的第一个字符是什么?
27G
15x #连续删除15个字符
出现的是you
10.在第一行新增一行,该行内容输入“I am student…”。
1G
O #O 为在目前光标所在处的上一行插入新的一行
I am student...
11.保存后离开。
:wq