Linux 之vi与vim

vi

三种模式:

『一般模式』: 光标
『编辑模式』:i,o,a,r
『指令列命令模式』「:/ ?」

例子:
  1. 请在/tmp 这个目录下建立一个名为vitest 的目录;
  2. 将/etc/man.config复制到本目录底下;
  3. 移动到第58 行,向右移动40 个字符,请问你看到的双引号内是什么目录?
  4. 移动到第一行,并且向下搜寻一下『 bzip2 』这个字符串,请问他在第几行?
  5. 将50 到100 行之间的『小写man 字符串』改为『大写MAN 字符串』,并且一个一个挑选是否需要修改?
  6. 修改完之后,突然反悔了,要全部复原,有哪些方法?
  7. 我要复制65 到73 这九行的内容(含有MANPATH_MAP),并且贴到最后一行之后;
  8. 21 到42 行之间的开头为# 符号的批注数据我不要了,要如何删除?
  9. 将这个档案另存成一个man.test.config 的档名;
  10. 去到第27 行,并且删除15 个字符,结果出现的第一个单字是什么?
  11. 在第一行新增一行,该行内容输入『I am a student...』;
  12. 储存后离开吧!

操作:

  1.『mkdir /tmp/vitest』 『cd /tmp/vitest』
  2.『cp /etc/man.conf .』『vi man.config』『:set nu』
    3.『58G』『40→』
  4.『1G』/『gg』『/bzip2』
  5.『:50,100s/man/MAN/gc 』无gc则直接替换
  6. (1)简单的方法可以一直按『 u 』回复到原始状态,
  (2)使用不储存离开『 :q! 』之后,再重新读取一次该档案;
  7.『65G』 『 9yy 』『 G 』『 p 』
  8.『 21G 』→『 22dd 』
  9.『 :w man.test.config 』
  10.『27G』『 15x 』
  11.先『 1G 』『 O 』『I am a student...』[Esc]
    12.『:wq』

 

vim

复制:y, 粘贴:p, 删除:d, v:反白选择,V:行选择
[Ctrl]+v 区块选择,用长方形的方式选择资料
文档IP.txt:
192.168.1.1 host1.class.net
192.168.1.2 host2.class.net
192.168.1.3 host3.class.net
192.168.1.4 host4.class.net
192.168.1.5 host5.class.net
192.168.1.6 host6.class.net
192.168.1.7 host7.class.net
192.168.1.8 host8.class.net

例子:

  1. 文档如上,将hostx 全部复制到最后一列
  2. 多档案编辑:前3行复制到另一个文件IP2.txt
  3. 多窗口功能:对照文档前后
操作:

  1. 将光标停在第一行的h,『[Ctrl]+v』光标放在8的位置,『y』,『p』
  2. 『vim IP.txt IP2.txt』 先显示前面的,查看当前的文件用『:file』
    『3yy』『:n』『G』『p』『:q』
  3. 『:sp』后面加文件名则再打开一个,窗口切换『[ctrl]+w』放开后按↓
退出『:q』只能一个个退出

posted @ 2017-08-30 11:10  x.cube  阅读(755)  评论(0编辑  收藏  举报