1.5 vim命令模式

#显示行号

set nu


#取消行号

set nonu


#查找

vi /etc/init.d/iptables

/iptables


#查找并替换

1,20s/IPTABLES/iptables/g     g是全局替换,不加g就不能全局替换

1,$s/IPTABLES/iptables/g      $是全文件

%s/IPTABLES/iptables/g        %是全文件,替代1,$

%s@IPTABLES@iptables@g


习题:

1. 下面操作和结果描述正确的是?

在一般模式下直接输入:set nu会显示行号

显示行号的时候,可以输入:set nonu取消行号显示

当编辑完一个文件后,需要按一下ESC,然后输入:wq可以保存退出文档

如果不小心输入错了命令,需要连续按两下ESC才可以取消刚刚敲的命令然后进入一般模式

2. 用什么方法可以在vim里面搜索关键词?

一般模式下,直接输入/word

一般模式下,直接输入?word

一般模式下,直接输入:/word


总结:

主要: 查找与替换,%s#root#tim#g

次要: 显示行号,set nu; 取消行号,set nonu

实践出真理

扩展学习
1). 分别向下、向右、向左、向右移动5个字符
j  l h  5l

2). 分别向下、向上翻两页

ctrl +b   ctrl + f


3). 把光标移动到第49行
49G

4). 让光标移动到行末,再移动到行首
shift+6
shift + 4

5). 移动到1.txt文件的最后一行
dd
gg
p

6). 移动到文件的首行
gg

7). 搜索文件中出现的 iptables 并数一下一共出现多少个
/iptables

8). 把从第一行到第三行出现的iptables 替换成iptable
1,3s/iptables/iptable/g

9). 还原上一步操作
u

10). 把整个文件中所有的iptables替换成iptable
%s/iptables/iptable/g

11). 把光标移动到25行,删除字符 “$”
v
X

12). 还原上一步操作
u

13). 删除第50行
50dd

14). 还原上一步操作
u

15). 删除从37行到42行的所有内容
6dd

16). 还原上一步操作
u
17). 复制48行并粘贴到52行下面
48yy
p

18). 还原上一步操作
u

19). 复制从37行到42行的内容并粘贴到44行上面
37pp
p

20). 还原上一步操作(按两次u)
uu

21). 把37行到42行的内容移动到19行下面
37dd
p

22). 还原上一步操作
u

23). 光标移动到首行,把/bin/sh 改成 /bin/bash
shift+6
1s#/bin/sh#/bin/bash#

24). 在第一行下面插入新的一行,并输入“# Hello!”
o
# Hello!

25). 保存文档并退出

wq


你可能感兴趣的:(1.5,vim命令模式)