Linux下 Vim(Vi)编辑器的使用
vi编辑器
vi是UNIX和类UNIX环境下的可用于创建文件的屏幕编辑器。vi有两种工作模式:命令模式和文本输入模式。启动vi需要输入vi,按[Spacebar]键并输入文件名后回车。
切换模式键
vi从命令模式切换到文本输入模式。每个键以不同方式使vi进入文本输入模式。按[ESC]键使vi从文本输入模式回到命令模式。
表1列出了vi从命令模式切换到文本输入模式的命令键及其功能。
表1 切换到文本输入模式的命令键
|
键 |
功能 |
|
i |
在光标左侧输入正文 |
|
I |
在光标所在行的行首输入正文 |
|
a |
在光标右侧输入正文 |
|
A |
在光标所在行的行尾输入正文 |
|
o |
在光标所在行的下一行增添新行,光标位于新行的行首 |
|
O |
在光标所在行的上一行增添新行,光标位于新行的行首 |
说明:1. 光标的位置由双下划线(═)标明。
2. 当前行指光标所在的那一行。
退出命令
只有一种方式进入vi,但是有几种方式退出vi,退出方式的选择取决于如何处理编辑后的文件。
除了ZZ命令外,这些命令都以:开始,用[Return]结束命令行。表2列出了vi编辑器的退出命令及其功能。
表2 vi编辑器的退出命令
|
键 |
功能 |
|
:wq |
保存文件,退出vi编辑器 |
|
:w |
保存文件,但不退出vi编辑器 |
|
:q |
退出vi编辑器 |
|
:q! |
不保存文件,退出vi编辑器 |
|
ZZ |
保存文件,退出vi编辑器 |
文本修改键
这些键只适用于命令模式。表3列出了vi编辑器的退出命令及其功能。
表3 命令模式下vi编辑器的文本修改键
|
键 |
功能 |
|
x |
删除光标位置指定的字符 |
|
dd |
删除光标所在的行 |
|
u |
撤销最近的修改 |
|
U |
撤销对当前行上做的所有修改 |
|
r |
替换光标位置上的一个字符 |
|
R |
替换从光标位置开始的字符,同时改变vi到文本输入模式 |
|
.(点) |
重复上一次的修改 |
光标移动指令
在命令模式下,这些键可以在文档中移动光标。表4列出了vi编辑器的退出命令及其功能。
表4 vi的光标移动键
|
键 |
功能 |
|
h或[ ] |
将光标向左移动一格 |
|
j或[ ] |
将光标向下移动一格 |
|
k或[ ] |
将光标向上移动一格 |
|
l或[ ] |
将光标向右移动一格 |
|
$ |
将光标移到当前行的行尾 |
|
w |
将光标向右移一个字 |
|
b |
将光标向左移一个字 |
|
e |
将光标移到字尾 |
|
0(零) |
将光标移到当前行的行首 |
|
[Return]键 |
将光标移到下一行的行首 |
|
[Spacebar]键 |
将光标向右移动一位 |
|
[Backspace]键 |
将光标向左移动一位 |
注意:在文本输入模式下避免使用光标键(箭头键)。因为在某些系统中,光标键被解释为普通的ASCII 字符。如果在文本输入模式下使用光标键,那么对应的ASCII字符将被插入文件中。
剪切和粘贴键
这些键用来重新安排用户文件中的文本,在vi的命令模式下可用。表5列出了vi编辑器的剪切和粘贴键及其功能。
表5 vi编辑器的剪切和粘贴键
|
键 |
功能 |
|
d |
删除指定位置的文本,并存到临时的缓冲区中。可以使用put操作符(p或P键)访问这个缓冲区 |
|
y |
将指定位置的文本复制到临时缓冲区。可以使用put操作符访问这个缓冲区 |
|
P |
将指定缓冲区的内容放到当前光标的位置之上 |
|
p |
将指定缓冲区的内容放到当前光标的位置之下 |
翻页键
翻页键用来大块滚动用户的文件,在vi的命令模式下可用。表6列出了vi编辑器的翻页键及其功能。
表 6 vi编辑器的翻页键
|
键 |
功能 |
|
[Ctrl-d] |
将光标向下移到文件尾,通常每次移动12行 |
|
[Ctrl-u] |
将光标向上移到文件头,通常每次移动12行 |
|
[Ctrl-f] |
将光标向下移到文件尾,通常每次移动24行 |
|
[Ctrl-b] |
将光标向上移到文件头,通常每次移动24行 |
Linux下 Vim(Vi)编辑器的使用的更多相关文章
- Linux下的vi编辑器与gcc工具的使用
最近在网上找了些视频,自学了一点Linux环境下,C编程的方法. 注 vi与vim是有区别的,vim打开的源码文件其中的关键字是有颜色的. vi编辑器有3种模式,命令行模式,插入模式,底行模式. 如果 ...
- linux下Vim文本编辑器的常用快捷键
Linux插入命令 a 在光标之后插入字符 A 把光标移动到行首尾进入插入模式 i 在光标之前插入字符 I 把光标移动到行首并进入插入模式 o 在光标下插入新行 O 在光标上插入新行 Linux定位 ...
- Linux下采用VI编辑器删除复制或移动多行文本内容
一.删除多行 单行删除,:1(待删除行号)d 多行删除,:1,10d dd 删除光标所在行ndd删除以当前行开始的n行dw删除以当前字符开始的一个字符ndw删除以当前字符开始的n个字符d$.D删除以当 ...
- linux下vim编辑器使用
VIM - Vi IMproved: vim是vi编辑器的升级版,是linux下标准的编辑器,具有程序编写能力,可以根据字体颜色辨别语法的正确性,方便程序的设计. 使用: # vim [OPTION] ...
- linux 下vim的使用
vi与vim vi编辑器是所有Unix及Linux系统下标准的编辑器,他就相当于windows系统中的记事本一样,它的强大不逊色于任何最新的文本编辑器.他是我们使用Linux系统不能缺少的工具.由于对 ...
- linux下使用vi操作
ESC : 进入命令模式 linux下使用vi后,怎样跳转到文件结尾 pagedown键连续按 虽然我也这么用,但还是太笨了.问了高手,方法是按shift+g,另外,到文件开头是gg. linux ...
- linux 下vim的使用(必看)
vi与vimvi编辑器是所有Unix及Linux系统下标准的编辑器,他就相当于windows系统中的记事本一样,它的强大不逊色于任何最新的文本编辑器.他是我们使用Linux系统不能缺少的工具.由于对U ...
- windows下编辑过的文件在Linux下用vi打开行尾会多出一个^M符号
一般情况下,windows下编辑过的文件在Linux下用vi打开行尾会多出一个^M符号,如下图: 这是因为Windows等操作系统用的文本换行符和UNIX/Linux操作系统用的不同,Windows系 ...
- Linux下vim文件未正常退出,修复文件
Linux下vim文件未正常退出,会产生一个 .文件名.swp的文件 ls -al ,rm 删掉.swp文件 之后就可以正常使用文件了
随机推荐
- promisify,promisifyAll,promise.all实现原理
1.promisify function toPrimisify (fn){ return function (...args){ return new Promise(function(r ...
- javascript 数据类型 -- 检测
一.前言 在上一篇博文中 Javascript 数据类型 -- 分类 中,我们梳理了 javascript 的基本类型和引用类型,并提到了一些冷知识.大概的知识框架如下: 这篇博文就讲一下在写代码的过 ...
- 在虚拟机中安装Centos系统
1.首先下载VMware 2.然后可以去http://mirrors.aliyun.com下载映像ISO 3.打开VM,点击创建新的虚拟机 4.选择典型模式 5.稍后安装操作系统 6.选择你所要安装的 ...
- postgresql从timestamp(6)复制到timestamp(0),时间会变
主要涉及临界点(跨天) 例子(时间:2016-08-05 23:59:59.863) timestamp(6):2016-08-05 23:59:59.863 timestamp(0):2016-08 ...
- Reveal : Xcode辅助界面调试工具
Reveal简介: Reveal是一款iOS界面调试工具,辅助Xcode进行界面调试,使用它可以在iOS开发的时候动态的查看和修改应用程序的界面. 软件下载 首先去官网下载Reveal,下载地址:ht ...
- 判断DataTale中判断某个字段中包含某个数据
// <summary> /// 判断DataTale中判断某个字段中包含某个数据 /// </summary> /// <param name="dt&quo ...
- 删除API
Delete API 删除API允许根据ID从指定索引中删除一个类型化的JSON文档. DELETE /twitter/_doc/1 返回结果如下: { "_index": &qu ...
- 串口RS232和485通信的波形分析
一.串行数据的格式 异步串行数据的一般格式是:起始位+数据位+停止位,其中起始位1 位,数据位可以是5.6.7.8位,停止位可以是1.1.5.2位. 起始位是一个值为0的位,所以对于正逻辑的TTL电平 ...
- libguestfs手册(2):guestfish command
添加一个drive:guestfs_add_drive_opts add-drive filename [readonly:true|false] [format:..] [iface:..] [na ...
- 算法与数据结构(四) 图的物理存储结构与深搜、广搜(Swift版)
开门见山,本篇博客就介绍图相关的东西.图其实就是树结构的升级版.上篇博客我们聊了树的一种,在后边的博客中我们还会介绍其他类型的树,比如红黑树,B树等等,以及这些树结构的应用.本篇博客我们就讲图的存储结 ...