vi的使用规则

1、vi的基本概念

基本上vi可以分为三种状态,分别是 命令模式(command mode)、插入模式(Insertmode)和  底行模式(last line
mode)

各模式的功能区分如下:

1) 命令行模式(command mode)

控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode。

2) 插入模式(Insert mode)

只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。

3) 底行模式(last line mode)

将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号……等。

不过一般我们在使用时把vi简化成两个模式,就是将底行模式(last line mode)也算入命令行模式(command mode)。

2、vi的基本操作

a) 进入vi

  在系统提示符号输入vi及文件名称后,就进入vi全屏幕编辑画面:

  $ vi
myfile

不过有一点要特别注意,就是您进入vi之后,是处于「命令行模式(command mode)」,您要切换到「插入模式(Insert
mode)」才能够输入文字。

b) 切换至插入模式(Insert mode)编辑文件

在「命令行模式(command
mode)」下按一下字母「i」就可以进入「插入模式(Insert
mode)」,这时候你就可以开始输入文字了。

c) Insert 的切换

  您目前处于「插入模式(Insert
mode)」,您就只能一直输入文字,如果您发现输错了字!

想用光标键往回移动,将该字删除,就要先按一下「ESC」键转到「命令行模式(command
mode)」再删除文字。

d) 退出vi及保存文件

在「命令行模式(command mode)」下,按一下「:」冒号键进入「Last line
mode」,例如:

: w filename  (输入 「w
filename」将文章以指定的文件名filename保存)

:
wq
   (输入「wq」,存盘并退出vi)

:
q!   
(输入q!, 不存盘强制退出vi)

3、命令行模式(command mode)功能键
1).
插入模式

  按「i」切换进入插入模式「insert
mode」,按“i”进入插入模式后是从光标当前位置开始输入文件;

  按「a」进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字;

  按「o」进入插入模式后,是插入新的一行,从行首开始输入文字。

2).
从插入模式切换为命令行模式


  按「ESC」键。

4). 删除文字

「x」 
: 
每按一次,删除光标所在位置的“后面”一个字符。

  「#x」:例如,「6x」表示删除光标所在位置的“后面”6个字符。

  「X」 :大写的X,每按一次,删除光标所在位置的“前面”一个字符。

  「#X」:例如,「20X」表示删除光标所在位置的“前面”20个字符。

  「dd」:删除光标所在行。

  「#dd」:从光标所在行开始删除#行

来自:http://blog.csdn.net/liuwenbo0920/article/details/8442847

vi的使用规则,布布扣,bubuko.com

时间: 2024-10-27 07:44:18

vi的使用规则的相关文章

vi/vim高级命令集粹

vi/vim高级命令集粹 (ctrl +v过来 留着以后看) 1.交换两个字符位置 xp 2.上下两行调换 ddp 3.把文件内容反转 :g/^/m0/ (未通过) 4.上下两行合并 J 5.删除所有行 dG 6.从当前位置删除到行尾 d$ 7.从当前位置复制到行尾 y$ 如果要粘贴到其他地方 p 就可以了 由于vi 是建立在 EX 上的 所以 当键入 : 时就来到了 EX 命令状态 8.:ab string strings 例如 ":ab usa United States of Americ

vi高级命令集锦

1.交换两个字符位置 xp 2.上下两行调换 ddp 3.把文件内容反转 :g/^/m0/ (未通过) 4.上下两行合并 J 5.删除所有行 dG 6.从当前位置删除到行尾 d$ 7.从当前位置复制到行尾 y$ 如果要粘贴到其他地方 p 就可以了 由于vi 是建立在 EX 上的 所以 当键入 : 时就来到了 EX 命令状态 8. :ab string strings 例如 ":ab usa United States of America" , 当你在文见里插入 usa 时 Unite

ubuntu下docker固定IP配置及桥接

ubuntu下docker固定IP配置及桥接 一.Docker的四种网络模式 Docker在创建容器时有四种网络模式,bridge为默认不需要用--net去指定,其他三种模式需要在创建容器时使用--net去指定. bridge模式,使用--net=bridge指定,默认设置. none模式,使用--net=none指定. host模式,使用--net=host指定. container模式,使用--net=container:容器名称或ID指定.(如:--net=container:30b668

58. 分析、测试与总结:罗马数字和阿拉伯数字的转换[roman to integer and integer to roman in c++]

[本文链接] http://www.cnblogs.com/hellogiser/p/roman-to-integer-and-integer-to-roman.html [题目] 给出一个罗马数字,转换为阿拉伯数字.本题只考虑3999以内的数. 罗马数字有如下符号: Ⅰ(1)Ⅴ(5)Ⅹ(10)L(50)C(100)D(500)M(1000) 计数规则: (1).若干相同数字连写表示的数是这些罗马数字的和,如III=3: (2).小数字在大数字前面表示的数是用大数字减去小数字,如IV=4: (3

[转]vim常用命令

http://www.cnblogs.com/sunyubo/archive/2010/01/06/2282198.html http://blog.csdn.net/wooin/archive/2007/10/31/1858917.aspx 好文 下面是我常用的一些命令, 放在这里供我备忘: 新学习到的命令:  1. 重复最近的文本操作:使用点号键(.) 2. 筛选功能:在vi 中按 Escape,输入 :!command(其中的 command 是要执行的 UNIX 命令),然后按回车,就可

Linux/Mac 日常入门命令行的规整总结

终端命令行之前做过泛泛的了解,然而疏导用书方恨少,一遇上用命令行配置环境就两眼一抹黑. 于是决定整理一下网上看到常用的一些. 日常文件夹及文件操作 进入某个目录:cd ~ 下载目录:cd ~/Downloads/ 返回上级:cd ..(.表示当前目录,..表示上级目录) ls 查看目录下的文件 更多内容:ls -l 隐藏文件:ls -a mv 移动,重命名文件 mv a b cp 复制文件和文件夹 把 a 复制为 b:cp a b 与 mv 一样,也可以跨目录复制:cp ~/Downloads/

转 - Debian系统配置PPTP方法 添加用户和iptables规则

本文转载来自:http://blog.csdn.net/laojiang025/article/details/54934038 由于项目的需要,需要在Debian服务器中配置PPTP,以前有在CENTOS环境中配置的,而且网上之前存在不少的一键包很多都失效,所以尝试查阅资料尝试手工配置.这里就把配置过程记录下来. 第一.安装pptpd服务 apt-get install pptpd 第二.编辑/etc/pptpd.conf  配置文件 localip 10.0.0.1 remoteip 10.

html页面的CSS、DIV命名规则

CSS命名规则 头:header 内容:content/containe 尾:footer 导航:nav 侧栏:sidebar 栏目:column 页面外围控制整体布局宽度:wrapper 左右中:left right center 登录条:loginbar 标志:logo 广告:banner 页面主体:main 热点:hot 新闻:news 下载:download 子导航:subnav 菜单:menu 子菜单:submenu 搜索:search 友情链接:friendlink 页脚:foote

汉诺塔系列问题: 汉诺塔II、汉诺塔III、汉诺塔IV、汉诺塔V、汉诺塔VI、汉诺塔VII

汉诺塔II:(hdu1207) /先说汉若塔I(经典汉若塔问题),有三塔,A塔从小到大从上至下放有N个盘子,如今要搬到目标C上, 规则小的必需放在大的上面,每次搬一个,求最小步数.这个问题简单,DP:a[n]=a[n-1]+1+a[n-1],先把 上面的n-1个放在B上,把最大的放在目标C上,再把N-1个放回到C上就可以. </pre><p></p>如今是汉若塔II,改为四个塔,開始方程想简单了,不是最优的.给出网上的一种最优解法例如以下:(1)将x(1<=x&l