目录
学习 vi
的目的
在工作中,要对 服务器 上的文件进行 简单 的修改,可以使用 ssh
远程登录到服务器上,并且使用 vi
进行快速的编辑即可
-
常见需要修改的文件包括:
-
源程序
-
配置文件,例如
ssh
的配置文件~/.ssh/config
-
vi 和 vim
在很多 Linux
发行版中,直接把 vi
做成 vim
的软连接
vi
-
vi
是Visual interface
的简称,是Linux
中 最经典 的文本编辑器 -
vi
的核心设计思想 —— 让程序员的手指始终保持在键盘的核心区域,就能完成所有的编辑操作
vi
的特点:
-
没有图形界面 的 功能强大 的编辑器
-
只能是编辑 文本内容,不能对字体、段落进行排版
-
不支持鼠标操作
-
没有菜单
-
只有命令
-
vi
编辑器在 系统管理、服务器管理 编辑文件时,其功能永远不是图形界面的编辑器能比拟的
vim
vim = vi improved
-
vim
是从vi
发展出来的一个文本编辑器,支持 代码补全、编译 及 错误跳转 等方便编程的功能特别丰富,在程序员中被广泛使用,被称为 编辑器之神
打开和新建文件
在终端中输入 vi
在后面跟上文件名 即可
如果文件已经存在,会直接打开该文件
如果文件不存在,会新建一个文件
打开文件并且定位行
-
在日常工作中,有可能会遇到 打开一个文件,并定位到指定行 的情况
-
例如:在开发时,知道某一行代码有错误,可以 快速定位 到出错代码的位置
-
这个时候,可以使用以下命令打开文件
$ vi 文件名 +行数
提示:如果只带上 +
而不指定行号,会直接定位到文件末尾
异常处理
-
如果
vi
异常退出,在磁盘上可能会保存有 交换文件 -
下次再使用
vi
编辑该文件时,会看到以下屏幕信息,按下字母d
可以 删除交换文件 即可
.swp文件。
三种工作模式
-
命令模式
-
打开文件首先进入命令模式,是使用
vi
的 入口 -
通过 命令 对文件进行常规的编辑操作,例如:定位、翻页、复制、粘贴、删除……
-
在其他图形编辑器下,通过 快捷键 或者 鼠标 实现的操作,都在 命令模式 下实现
-
-
末行模式 —— 执行 保存、退出 等操作
-
要退出
vi
返回到控制台,需要在末行模式下输入命令 -
末行模式 是
vi
的 出口
-
-
编辑模式 —— 正常的编辑文字
末行模式命令
命令 | 英文 | 功能 |
---|---|---|
w | write | 保存 |
q | quit | 退出,如果没有保存,不允许退出 |
q! | quit | 强行退出,不保存退出 |
wq | write & quit | 保存并退出 |
x | 保存并退出 |