1、编辑模式:

(1)、按字母“i”可以进入编辑模式,光标位置不会变化,左下角会出现“插入”两个字,按“Esc”退出。

(2)、按大写的字母“I”,进入编辑模式。光标会定位到行首位置,按“Esc”退出。

(3)、按小写字母“o”,进入编辑模式,在光标所在行中往下另起一行,按“Esc”退出。

(4)、按大写字母“O”,进入编辑模式,在光标所在行中往上另起一行,按“Esc”退出。

(5)、按字母“a”,进入编辑模式,在光标所在位置往后挪一个字符,按“Esc”退出。

(6)、按大写字母“A”,进入编辑模式,光标定位在光标所在行的行末,按“Esc”退出。

2、命令模式:

搜索匹配 /word 向光标后搜索字符串word,按小写的“n”向后继续搜索。 搜索到最后一个字符串之后,会出现下图提示,继续按“n”就会从开头接着查找。 按大写的“N”是向上查找,同样也会出现提醒,继续按“N”就从结尾继续查找。

?word 向前搜索,按小写字母“n”就向上搜索,按大写字母“N”就向下搜索,与 /word 相反。

:g/targetWord 全局搜索

:n1,n2s/oldWord/newWord/g 指定替换 :1,$s/oldWord/newWord/g 全部替换 见下图例子, 回车,见下图, 可以看右下角,光标所在行为100行,所以光标下面的单词 dnsmasq 就没有被替换,使用命令 /lyslinux 可以查找,见下图, 上面这个命令中,不加g,就只替换每行的第一个字符串,见下图例子, 这边输入:之后,按向上的方向键,也是可以查找之前的命令。回车,见下图, 返回到第一行,见下图, 以上就是加不加 g 的区别,通常都是会加上 g 的。 全部替换的情况,见下图, 回车,见下图, 试着搜索一下 /dnsmasq ,见下图, 可以看到,找不到 dnsmasq 这个字符串了。

接着做实验,见下图, 将 /etc/hosts 替换成 lyslinux.com ,回车,见下图, 发现这个命令系统无法识别,具体怎么操作呢?见下图, 命令中加入两个 \ ,表示\后面的/不是命令间隔,只是普通字符。回车,见下图, 结果就可以替换成功了。但是上面这个命令运用起来有点麻烦,有没有比较简单的方法呢?见下图, 用“#”替代命令中的“/”就不影响 /etc/hosts 中的 / 了。回车,见下图,

可以看到替换成功了。将上面命令中的“#”换成“@”,也是可以的,见下图,

回车,见下图,

使用上面的命令也成功了。

n 搜索下一个同样的内容 N 搜索上一个同样的内容

命令行模式下的一些技巧 DTc 删除从光标的c之间的所有字符 Rc 将光标的字符替换为c nDD 删除n行数据 nYY 复制n行数据 nX 删除n个字符 R 进入替换状态,esc退出

接着看一下以 : 开头的命令, a. :wq 保存并退出 b. :wq! 强制保存并退出 c. :q 退出,不保存 d. :q! 强制退出,不保存 e. :w! 强制保存,在root用户下,即使文本只读也可以完成保存 f. :set nu 显示行号 e. :set nonu 不显示行号 g. :nohl 去掉查找时显示的黄底字符串,hl 为 high light 高亮的意思 h. :x 更改文件内容后保存并退出,效果与 :wq 一致;仅查看文件而没有更改的话,:wq 是可以更改 mtime 的时间,而 :x 则不会更改 mtime 的时间。