vi编辑器基础指令
vi -- 终端中的编辑器 visual interface ssh-- secure shell
vim vi improved
-----------------------------
打开和新建文件
vi 文件名
#如果文件已经存在,会直接打开文件
#如果文件不存在,会新建一个文件
-------------------------------
打开文件并定位行
vi 文件 光标定位在最开头
vi 文件 + 光标定位在结尾
vi 文件 +num 定位在多少行 方便找错误
---------------------------------------
中途强制退出E325 提示交换文件,可以按d直接删除

-------------------------------------------------------------
三种工作模式
1.命令模式
- 打开文件首先进入命令模式,是使用vi的入口
- 通过命令对文件进行常规的编辑操作,such as 定位,翻页,复制,粘贴,删除..
2.末行模式
- 是vi的出口,返回控制台,需在末行模式中输入命令
- w 保存 q退出 wq保存并退出
- 不保存无法直接退出 q!强行退出 x ==wq保存并退出 搜索并替换 :%s///gc
3.编辑模式-模式切换

常用命令
- 在命令模式下,输入一个数字,再加上一个命令,指定命令执行次数
- vi快速定位和编辑代码行
- 编辑操作,删除d/x,复制,粘贴,替换,缩排
- 撤销u和重复(恢复撤销的命令)ctrl+r
- 编辑
- 移动 h左 l右 j上 k下
- 行内移动:w word向后移动一个单词; b back向前移动一个单词; 0 回到行首;^第一个不是空白字符的位置;$行尾
- 行数移动:gg 文件顶部; G 文件末尾 ;数字gg 移动到数字对应的行数; 数字G 也是移动到对应行数; :数字 也是对应行数
- ctrl + b 向上翻页 ctrl+f 向下翻页 H Head 屏幕顶部 M Middle 屏幕中间 L Low 屏幕底部
- 段落移动:{上一段落 }下一段落
- 括号切换 %
- 标记 mx mark 'x 即回到做x标记的地方 x范围a-z A-Z
选中文本(可视模式)
- v 可视模式 从光标位置按正常模式选中
- V可视行模式 选中光标经过的完整行
- ctrl+v 可视块模式 垂直方向选中文本
- 可以和移动命令一起使用 例如:ggVG能够选中所有的内容
删除文本
- x 删除光标所在字符,或选中文字
- d(移动命令) 删除移动命令对应的内容
- dd删除光标所在行,ndd可以删除多行
- D删除至行尾
- 删除命令可以和移动命令相结合 dw 光标位置删除到单词结尾;d0删光标位置到行首;d}删光标位置到段尾;ndd;d代码行G 删到代码行之间的;d'a之间的
复制,粘贴 放在文本缓冲区,删除本质上是剪切
- y(移动)和删除类似 复制
- yy 复制一行,nyy复制多行
- p paste 粘贴
- 粘贴时注意:其他软件中ctrl+c复制的只能在编辑模式下粘贴,不能通过p命令粘贴
- 替换r 替换的值 替换光标位置 R 替换的值 光标开始一直往后修改
- 缩排>>向右缩进 <<向左 可视模式v下只需要<或 者> .重复命令
- (1)查找 /str 全部高亮显示 n往下一个寻找 N往上一个寻找 (2)快速匹配 按*向后找光标所在单词 #向前找光标所在单词 找不存在的取消高亮
- 查找与替换 此命令需要在末行模式下执行 格式 :s///g (1)例如全局替换 :%s/旧/新/g (2)可视区替换 :s/旧/新/g (3)确认替换 :%s/旧/新/gc
编辑模式
- i,I,a,A,o,O进入编辑模式

- 编辑命令和数字连用(1)10 i * esc 8i str
- 利用可视块模式 给多行代码增加注释 要使用I 不能使用i进入
- 末行模式拓展 :e .进入vi内置文件浏览器 :n 文件名 :w 文件名 另存为(适用于阶段性备份)
- 分屏命令:可以同时编辑和查看多个文件 :sp 文件名 横向分屏 (split) :vsp 文件 纵向分屏 ctrl+w管理窗口
- 分屏windows操作 : ctrl+w w windows切换下一个窗口 r reverse互换窗口 c close关闭当前 q退出 o other关闭其他窗口
vi编辑器基础指令的更多相关文章
- Liunx vi编辑器一些指令
最近几天学习了Liunx vi编辑器 的使用,感觉还比较容易.总结的一点心得: vi分为3个模式,命令模式,尾行模式,编辑模式. 1. 命令模式 与 编辑模式切换 a:光标向后移动一位进入编辑模式 i ...
- Linux基础-5.利用vi编辑器创建和编辑正文文件
1.vi编辑器简介 1)掌握vi编辑器的定义:vi编辑器是Linux和Unix上最基本的文本编辑器,工作在字符模式下.由于不需要图形界面,vi是效率很高的文本编辑器.尽管在Linux上也有很多图形界面 ...
- 所有的 Unix Like 系统都会内建 vi 文书编辑器。vim 是vi的升级版本,它不仅兼容vi的所有指令 ,而且还有一些新的特性在里面。
所有的 Unix Like 系统都会内建 vi 文书编辑器.vim 是vi的升级版本,它不仅兼容vi的所有指令 ,而且还有一些新的特性在里面. https://blog.csdn.net/carolz ...
- linux基础-第九单元 利用vi编辑器创建和编辑正文文件
vi编辑器简介 什么是vi vi编辑器的操作模式 vi编辑器的3种基本模式 在vi编辑器中光标的移动 移动光标位置的键与光标移动间的关系 进入插入模式 从命令行模式进入插入模式的命令 在命令行模式下删 ...
- 【Linux基础】VI 编辑器基本使用方法
vi编辑器是所有Unix及Linux系统下标准的编辑器.对Unix及Linux系统的任何版本,vi编辑器是完全相同的,它是Linux中最基本的文本编辑器. 第一章vi的三种模式 第二章vi文本编辑器 ...
- linux基础(Vi编辑器)
整理的linux vi编辑器命令 Vi编辑器,进入方式,输入vi file即可进入编辑模式 1.vi模式(Linux严格区分大小写) Vi所学到的几种模式 模式 主要用途 相应操作 对应命令 普通模式 ...
- Linux基础(3)- 正文处理命令及tar命令、vi编辑器、硬盘分区、格式化及文件系统的管理和软连接、硬连接
一.正文处理命令及tar命令 1) 将用户信息数据库文件和组信息数据库文件纵向合并为一个文件1.txt(覆盖) 2) 将用户信息数据库文件和用户密码数据库文件纵向合并为一个文件2.txt(追加) ...
- Linux基础之vi编辑器(二)
vi 编辑器 man vim 一 打开文件,定义光标 vi +# test 打开文件,定位于#行.vi + test 打开test文件,定位于最后一行.vi +/patter ...
- linux vim,vi编辑器的基础
在之前我也不知道为什么要学vim和vi编辑器,仅仅是听过别人说这个对与linux非常重要. 先说一下为什么要学习这个编辑器.个人的看书理解. 系统管理员的重要工作就是參与与设置某些重要软件的配置文件, ...
随机推荐
- .Net知识大全(个人整理)
.Net知识大全 本章内容适用于对.NET有一定基础的或者是想通过本文章对.NET基础知识记不清楚的朋友,可以通过本文章进行回顾. 面试的时候可能也会遇到相应的题目,建议面试前进行回顾!!! 1.NE ...
- vue组件间通信六种方式(完整版)
本文总结了vue组件间通信的几种方式,如props. $emit/ $on.vuex. $parent / $children. $attrs/ $listeners和provide/inject,以 ...
- codeblocks出现'to_string' was not declared in this scope 的问题,用g++11编译环境
在将数字转化为字符串时使用to_string()竟然出现了'to_string' was not declared in this scope,我头文件用的万能头文件肯定没问题,而这个函数在其他的CB ...
- VUE+element tree 实现权限管理
先写个标题~ ~,后续有空在写 具体功能: 1. 获取所有角色权限列表展示,点击进行编辑,编辑用terr树形结构显示页面结构 2.提交的数据格式(页面名称,角色ID,父节点ID,子节点ID) 3.后面 ...
- py+selenium 直接给日期赋值,控制台调试报错【已解决】
目标:给带日期控件的输入框赋值. 百度去搜索让你各种去只读readonly属性,再send_keys 方法: 其实既然可以去除readonly属性,那就可以直接给属性赋值,将两行代码缩为一行. dri ...
- Lucene01--倒排索引思想
Lucene01--倒排索引思想 1. 倒排索引的概念: 首先对数据按列拆分存储,然后对文档中的数据分词,对词条进行索引,并记录词条在文档中出现的位置.这样查找时只要找到了词条,就找到了对应的文档.概 ...
- C#3.0新增功能05 分部方法
连载目录 [已更新最新开发文章,点击查看详细] 分部类或结构可以包含分部方法. 类的一个部分包含方法的签名. 可以在同一部分或另一个部分中定义可选实现. 如果未提供该实现,则会在编译时删除 ...
- [leetcode] 238. Product of Array Except Self (medium)
原题 思路: 注意时间复杂度,分别乘积左右两边,可达到O(n) class Solution { public: vector<int> productExceptSelf(vector& ...
- 快速java环境变量配置记录
配置java环境变量就是将java.exe和javac.exe的路径告诉系统,让系统能够找到这两个exe文件,废话不多说,直接开始如何配置环境变量,安装jdk时记住你的安装位置.(配置时必须要的) ...
- ArcGIS API For JavaScript 开发(五)要素图层的编辑
2018-4-3 这篇博客主要讲述要素的层的编辑功能,是基于FeatureLayer的applyEdit方法.由于自己目前正在学习当中,有许多不足之处请各位指出,欢迎指导学习! 主要功能是 1.将地图 ...