一, vim 的编辑模式
二, vim 命令模式
三, vim 实践操作
# cp /etc/dnsmasq.conf /tmp/1.txt
(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").
注:
1,:set nu 显示行号 :set nonu 不显示行号
2,/iptables 搜索字符串 iptables, 会高亮显示被搜索的字符, n 向下跳转, shift+n 向上跳转
3,?iptables 搜索字符串 iptables, 会高亮显示被搜索的字符, shift+n 向下跳转, n 向上跳转
4,:1,20s/IPTABLES/iptables/g 将 1-20 行的 IPTABLES 替换为 iptables,g 是全局替换的意思, 否则当一行有两个 IPTABLES 时只会替换前面一个.
5,:1,s/IPTABLES/iptables/g 将 1? 是指 1 - 最尾行, 整个文档
6,:%s/IPTABLES/iptables/g 整个文档,% = 1,$
7, 针对要替换的字符中带 / 的处理方法是: 在前面加一个 \ 用来破译一下, 以便机算机识别或者将表达示中的 / 用其它的字符如 #或 @
8,:nohl 取消文档中的高亮
来源: http://www.bubuko.com/infodetail-2479063.html