vi编辑器使用介绍
vi是linux下使用及其广泛的一个编辑器,虽然看上去很简单,但实际功能强大。
使用vi,核心就是熟悉它的一些命令。vi的命令非常多,但我们常用的实际就那几种。
下面将vi最核心的使用点介绍下。
一、运行
vi 文件名
如果指定的文件存在,则打开显示该文件,可以开始编辑了。如果文件不存在,则会打开一个新文件。
二、命令模式和编辑模式
vi有两种操作模式,命令模式和编辑模式。编辑模式下,就可以输入内容。命令模式下,则不能输入内容,但可以进行光标移动、删除字符、删除行、插入行、保存文件内容、退出vi等。 按esc键就可以进入命令模式。
所以当记不住当前vi处于哪种模式下。最保险的方式按下esc键。
新打开一个已经有内容的文件,初始处于命令模式,如果是新文件,则初始为编辑模式。
三、进入编辑模式
有多种方式可以从命令模式进入编辑模式,一旦进入编辑模式,在当前光标下就可以输入字符了。 进入编辑模式,就是输入各种特定的字符,如下:
i 在当前光标前插入字符
a 在当前光标后插入字符
o 在当前光标所在行的下面,插入新的一行,光标就位于新行的首位,可以开始编辑
说明:在输入的过程中,如果按回车键,跟正常的文本编辑一样,会起新行。 如果想在当前行的上面插入一行。就把光标移到改行的最前面,按下i字符进入编辑模式,按下回车键, 这时上面会产生一个空行,但光标还是位于原来的行,这时要想在上一空行输入信息,可按esc进入命令模式,然后在命令模式下将光标移到上一行,然后再按i或a进入编辑模式。
四、保存修改和退出vi
首先按esc键进入命令模式。有几种退出方式:
q 退出(这个要求文件内容没被修改)
q! 退出(如果文件被修改,则内容不保存)
w 保存修改内容(但不退出)
wq 保存修改内容且退出
五、快速移动光标
当文件很长时,如果只是靠光标上下移动则很慢。这时在命令模式下, 通过 ctrl+f , ctrl+b 键可以进行翻页,从而快速移动光标。
当然,还有很多其它更快捷的方式。
六、定位到指定行
在很多场合下,需要根据文件的行号直接让光标定位到指定行。
这只需进入命令模式,并进入 : 符号下,直接输入行号的数字,回车即可。
vi编辑器使用介绍的更多相关文章
- Unix及类Unix系统文本编辑器的介绍
概述 Vim是一个类似于Vi的著名的功能强大.高度可定制的文本编辑器,在Vi的基础上改进和增加了很多特性.VIM是纯粹的自由软件. Vim普遍被推崇为类Vi编辑器中最好的一个,事实上真正的劲敌来自Em ...
- Linux学习之一--VI编辑器的基本使用
vi编辑器是Linux系统下标准的编辑器.而且不逊色于其他任何最新的编辑器.可是会用的有多少呢.下面介绍一下vi编辑器的简单用法和部分命令.让你在Linux系统中畅行无阻. 基本上vi可以分为三种状态 ...
- Linux下VI命令详细介绍
vi 是"Visual Interface" 的简称,它在Linux 上的地位就仿佛Edit 程序在DOS上一样.它可以执行输出.删除.查找.替换.块操作等众多文本操作,而且 ...
- linux中vi编辑器的使用
vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本 编辑器,这里只是简单地介绍一下它的用法和一小部分指令.由于对Unix及Linux系统的任 何版本,vi编辑器是完 ...
- vi 编辑器命令 (share)
转自:http://man.ddvip.com/soft/vieditor/vi.html 一.Unix编辑器概述 编辑器是使用计算机的重要工具之一,在各种操作系统中,编辑器都是必不可少的部件.Uni ...
- vi编辑器简单应用(摘抄)
摘抄于 vi编辑器的使用 (2) (3) 1 vi编辑器的基本使用 1.1 vi的启动 打开: $ vi example.c 只读打开 $ vi –R example.c 1.2 vi的工作模式 1. ...
- 初识vi编辑器
vi基本概念既不介绍了,百度,wiki上都有.下面稍微总结下我所学的vi吧 1.vi分为三种状态:命令模式(command mode);插入模式(insert mode);底行模式(last line ...
- Unix/Linux下如何使用Vi编辑器
vi 的工作模式 Vi 在初始启动后首先进入编辑模式,这时用户可以利用一些预先定义的按键来移动光标.删除文字. 复制或粘贴文字等.这些按键均是普通的字符,例如 l 是向右移动光标,相当于向右箭头键,k ...
- Linux之vi编辑器
vi编辑器是Linux系统下标准的编辑器.而且不逊色于其他任何最新的编辑器.可是会用的有多少呢.下面介绍一下vi编辑器的简单用法和部分命令.让你在Linux系统中畅行无阻. 基本上vi可以分为三种状态 ...
随机推荐
- C#中接口和方法的运用(Fourteenth Day)
由于周五我有一些事情没来得及总结当天的知识,所以在今天总结一下周五在云和学院所学到的有关接口和方法的知识. 理论: 接口: •接口的定义:interface关键字,接口中可以有属性.方法(未实现) • ...
- 初学MVC
学习MVC基础:C#. ADO.NET .html.javascript.ASP.Net .WebFrom MVC模式两种理解:一种是表现模式,另一种是架构模式.它将应用程序分成三个主要的组件:视图( ...
- 制作自己的私有库(cocopods)
1.首先你需要创建一个私有的仓库,用于存放自己的podspec相关文件,至于git服务器你可以用http://git.oschina.net/,或者自己搭建的都行.我在git服务器上创建了一个名字叫T ...
- 由命名空间函数而引发思考--js中的对象赋值问题
最近没有编码任务,作为一个才毕业的小辣鸡,给的任务就是看一下公司的新系统,熟悉怎么用哪些地方是干什么的. 下午喝了两杯水,感觉有点浪.然后就开始看了下代码.发现有一个函数是这样子的. var TX = ...
- C++之类的静态变量
成员变量 通过对象名能够访问public成员变量 每个对象都可以有只属于自己的成员变量 成员变量不能在对象之间共享 类的静态成员 静态成员变量 存储在 全局数据区 #include<std ...
- 一致性算法--Raft
分布式一致性算法--Raft 前面一篇文章讲了Paxos协议,这篇文章讲它的姊妹篇Raft协议,相对于Paxos协议,Raft协议更为简单,也更容易工程实现.有关Raft协议和工程实现可以参考这个链接 ...
- document.domain与js跨域的问题
以前如果要使iframe里面的脚本能访问parent的内容,但iframe和parent的二级域名相同,那一般都会在两者都写上document.domain="xxx.com" 以 ...
- 【学习】leader特别忙工作到晚上11点左右,组员7点左右下班了,作为leader怎么办?
Ø leader先将自己做的事情罗列出来,选出不属于leader当前职责的工作内容. Ø 将不属于leader职责内容的部分授权给组员(承担更多的责任,职责). Ø 授权时,先考察组员的能力和了 ...
- pycurl,Python cURL library
pycurl — A Python interface to the cURL library Pycurl包是一个libcurl的Python接口.pycurl已经成功的在Python2.2到Pyt ...
- 【IPC进程间通信之四】数据复制消息WM_COPYDATA
IPC进程间通信+数据复制消息WM_COPYDATA IPC(Inter-Process Communication,进程间通信). 数据复制消息WM_C ...