vi编辑器简介
- vi编辑器是Linux和Unix上最基本的文本编辑器,工作在字符模式下。由于不需要图形界面,vi是效率很高的文本编辑器。尽管在Linux上也有很多图形界面的编辑器可用,但vi在系统和服务器管理中的功能是那些图形编辑器所无法比拟的。
- vi 编辑器并不是一个排版程序,它不像Word或WPS那样可以对字体、格式、段落等其他属性进行编排,它只是一个文本编辑程序。没有菜单,只有命令,且命令繁多。vi有3种基本工作模式:命令行模式、文本输入模式和末行模式。
- Vim是vi的加强版,比vi更容易使用。vi的命令几乎全部都可以在vim上使用。
文本编辑器的作用
创建或修改文本文件
维护Linux系统中的各种配置文件
Linux中最常用的文本编辑器
vi:类UNIX操作系统的默认文本编辑器
vim: vim是vi文本编辑器(一般简称为vi编辑器)的增强版本
vi编辑器的工作模式
三种工作模式
| 模式 | 作用 |
|---|---|
| 命令模式 | 在该模式下,用户可以输入各种合法的Vi命令,用于管理自己的文档。 |
| 输入模式 | 在该模式下,用户输入的任何字符都被vi当做文件内容保存起来,并将其显示在屏幕上。 |
| 末行模式 | 多数文件管理命令都是在此模式下执行,末行命令执行完后,Vi自动回到命令模式。 |
不同模式之间的切换

| 快捷键 | 作用 | 快捷键 | 作用 |
|---|---|---|---|
| a | 在光标之前插入 | i | 在光标之后插入 |
| o | 光标所在的下一行插入 | O | 光标所在上一行插入 |
| : | 末行模式 | esc键 | 退出当前模式回到命令模式 |
命令模式的基本操作
光标移动
| 操作类型 | 操作键 | 功能 |
|---|---|---|
| 方向移动 | ↑、↓、←、→ | 上、下、左、右 |
| 翻页 | Page Down或Ctrl+F | 向下翻动整页内容 |
| Page Up或Ctrl+B | 向上翻动整页内容 | |
| 行内快速跳转 | Home键或“^”、数字"0" | 跳转至行首 |
| End键或"$”键 | 跳转到行尾 | |
| 行间快速跳转 | 1G或者gg | 跳转到文件的首行 |
| G | 跳转到文件的末尾行 | |
| #G | 跳转到文件中的第#行 | |
| 行号显示 | :set nu | 在编辑器中显示行号 |
| :set nonu | 取消编辑器中的行号显示 |
复制、粘贴、删除
| 操作类型 | 操作键 | 功能 |
|---|---|---|
| 删除 | x或Del | 删除光标处的单个字符 |
| dd | 删除当前光标所在行 | |
| #dd | 删除从光标所在行开始的#行内容 | |
| d^ | 删除当前光标之前到行首的所有字符 | |
| d$ | 删除当前光标到行尾的所有字符 | |
| dw | 删除光标所在处单词 | |
| 复制 | yy | 复制当前行整行的内容到剪贴板 |
| #yy | 复制从光标所在行开始的#行内容 | |
| 粘贴 | p | 将缓冲区中的内容粘贴到光标位置处之后 |
| P | 粘贴到光标位置之前 |
文件内容查找
| 操作键 | 功能 |
|---|---|
| /word | 从上而下在文件中查找字符串“word” |
| ?word | 从下而上在文件中查找字符串“word” |
| n | 定位下一个匹配的被查找字符串 |
| N | 定位上一个匹配的被查找字符串 |
撤销编辑及保存退出
| 操作键 | 功能 |
|---|---|
| u | 按一次取消最近一次操作,重复u键,恢复多部操作 |
| U | 用于取消对当前行所做的所有比编辑 |
| ZZ | 保存当前的文件内容并退出vi编辑器 |
末行模式的基本操作
保存文件及退出vi编辑器
| 功能 | 命令 | 备注 |
|---|---|---|
| 保存文件 | :w | 保存修改的内容 |
| :w /root/newfile | 另存为其他文件 | |
| 退出vi | :q | 未修改退出 |
| :q! | 放弃对文件内容的修改,并退出vi | |
| 保存文件退出 | :wq | 保存修改的内容并退出 |
打开新文件或读入其他文件内容
| 命令 | 功能 |
|---|---|
| :e /install.log | 打开新的文件进行编辑 |
| :r /etc/filesystems | 在当前我文件中读入其他文件内容 |
文件内容替换
| 命令 | 功能 |
|---|---|
| :s/old/new | 将当前行中查找到的第一个字符"old"串替换为"new" |
| :s/old/new/g | 将当前行中查找到的所有字符串"old"替换为“new” |
| :#,# s/old/new/g | 在行号“#,#”范围内替换所有的字符串“old"为”new“ |
| :s/old/new/c | 在替换命令末尾加入c命令。将对每个替换动作提示用户进行确认 |
附赠vi编辑器键盘键位图

vi编辑器简介的更多相关文章
- 第三天 vi编辑器使用和软件安装
[复习] 判断题: 查看某文件权限为rwxr-xr-- ,则其所属组权限为只读. 对一个目录有w权限,表示可以修改目录下文件内容. 3..tar.gz格式的压缩包可以使用tar -xjf解压缩 4.m ...
- linux基础-第九单元 利用vi编辑器创建和编辑正文文件
vi编辑器简介 什么是vi vi编辑器的操作模式 vi编辑器的3种基本模式 在vi编辑器中光标的移动 移动光标位置的键与光标移动间的关系 进入插入模式 从命令行模式进入插入模式的命令 在命令行模式下删 ...
- 第九单元 利用vi编辑器创建和编辑正文文件
vi编辑器简介 什么是vi vi编辑器的操作模式 vi编辑器的3种基本模式 在vi编辑器中光标的移动 移动光标位置的键与光标移动间的关系 进入插入模式 从命令行模式进入插入模式的命令 在命令行模式下 ...
- Linux基础-5.利用vi编辑器创建和编辑正文文件
1.vi编辑器简介 1)掌握vi编辑器的定义:vi编辑器是Linux和Unix上最基本的文本编辑器,工作在字符模式下.由于不需要图形界面,vi是效率很高的文本编辑器.尽管在Linux上也有很多图形界面 ...
- linux vi编辑器操作手册
简介 Linux下的文本编辑器有很多种,vi 是最常用的,也是各版本Linux的标配.注意,vi 仅仅是一个文本编辑器,可以给字符着色,可以自动补全,但是不像 Windows 下的 word 有排版功 ...
- linux中vi编辑器的使用
vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本 编辑器,这里只是简单地介绍一下它的用法和一小部分指令.由于对Unix及Linux系统的任 何版本,vi编辑器是完 ...
- 初识vi编辑器
vi基本概念既不介绍了,百度,wiki上都有.下面稍微总结下我所学的vi吧 1.vi分为三种状态:命令模式(command mode);插入模式(insert mode);底行模式(last line ...
- Vi编辑器入门
Vi编辑器入门 vi编辑器是所有Unix及Linux系统下标准的编辑器,类似于windows上的记事本! 1.vi的基本概念 基本上vi可以分为三种状态,分别是命令模式(command mode ...
- 二:Linux 的基本命令、VI编辑器、Linux中软件安装
Linux 的基本命令 1. 文件操作 a) Windows 是多根的文件系统,物理上是 1 到多块硬盘,逻辑上分为 C.D.E--盘, 每个盘都是一棵树.Linux 是单根的文件系统,不分 CDE ...
随机推荐
- Swift4.0复习访问控制与作用域
1.访问等级: open: 可以继承,可以重写. public: “public 访问等级能用于修饰所有文件作用域的函数.对象.协议.枚举.结构体.类以及各种类型中的属性与方法.用 public 所修 ...
- LODOP中带caption的表格被关联并次页偏移测试
ADD_PRINT_TABLE中的thead和tfoot可以每页输出,后面的打印项关联表格,可以紧跟着表格,实现在表格后面紧跟着输出内容的效果,表格可以自动分页,并总是跟在表格后面 ,在表格最后输出. ...
- Nginx配置文件的反向代理
问题描述:项目需要预览pdf,前端控件支持的格式是http://192.168.0.1/pdf/a.pdf 是这样的,然后我就想给路径配个nginx反向代理就好了,但是配置的时候出问题了. 1.正确 ...
- 解决Adobe cs6系列软件在Windows10操作系统中无法正常运行问题
大家好,我是安德风,很高兴今天能给大家一起解决Adobe cs6系列软件在Windows10操作系统中无法正常运行的问题.今天我以Adobe Photoshop cs6在Windows10环境安装运行 ...
- CF1277D Let's Play the Words?
思路: 字符串其实只有0...0, 0...1, 1...0, 1...1四种. 实现: #include <bits/stdc++.h> using namespace std; ]; ...
- 【计算机视觉】SeetaFace Engine开源C++人脸识别引擎
SeetaFace Engine是一个开源的C++人脸识别引擎,它可以在不依赖第三方的条件下载CPU上运行.他包含三个关键部分,即:SeetaFace Detection,SeetaFace Alig ...
- java多线程实现多客户端socket通信
一.服务端 package com.czhappy.hello.socket; import java.io.IOException; import java.net.InetAddress; imp ...
- git和GitHub初级
使用方式: 一种是本地创建一个文档, 然后在github上创建一个仓库, 在上传上去 一种是从仓库下载代码, 然后在本地编辑, 然后在上传上去 第一种: 首先在linux上创建一个文档, mkdir ...
- TypeScript(二)使用Webpack搭建环境
今天继续来更新,本篇文章我们讲环境搭建,主要分享一些环境搭建的学习资源及安装步骤,解决一些安装时可能会出现的问题.下面就让我们一起进入学习第一步,搭建TypeScript环境:一. 环境搭建1.1. ...
- [转帖]鲁大师Q3季度PC处理器排行:AMD、Intel终于五五开了
鲁大师Q3季度PC处理器排行:AMD.Intel终于五五开了 https://www.cnbeta.com/articles/tech/902375.htm 近日,鲁大师发布了Q3季度PC处理器排行. ...