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编辑器基础指令的更多相关文章

  1. Liunx vi编辑器一些指令

    最近几天学习了Liunx vi编辑器 的使用,感觉还比较容易.总结的一点心得: vi分为3个模式,命令模式,尾行模式,编辑模式. 1. 命令模式 与 编辑模式切换 a:光标向后移动一位进入编辑模式 i ...

  2. Linux基础-5.利用vi编辑器创建和编辑正文文件

    1.vi编辑器简介 1)掌握vi编辑器的定义:vi编辑器是Linux和Unix上最基本的文本编辑器,工作在字符模式下.由于不需要图形界面,vi是效率很高的文本编辑器.尽管在Linux上也有很多图形界面 ...

  3. 所有的 Unix Like 系统都会内建 vi 文书编辑器。vim 是vi的升级版本,它不仅兼容vi的所有指令 ,而且还有一些新的特性在里面。

    所有的 Unix Like 系统都会内建 vi 文书编辑器.vim 是vi的升级版本,它不仅兼容vi的所有指令 ,而且还有一些新的特性在里面. https://blog.csdn.net/carolz ...

  4. linux基础-第九单元 利用vi编辑器创建和编辑正文文件

    vi编辑器简介 什么是vi vi编辑器的操作模式 vi编辑器的3种基本模式 在vi编辑器中光标的移动 移动光标位置的键与光标移动间的关系 进入插入模式 从命令行模式进入插入模式的命令 在命令行模式下删 ...

  5. 【Linux基础】VI 编辑器基本使用方法

    vi编辑器是所有Unix及Linux系统下标准的编辑器.对Unix及Linux系统的任何版本,vi编辑器是完全相同的,它是Linux中最基本的文本编辑器. 第一章vi的三种模式 第二章vi文本编辑器 ...

  6. linux基础(Vi编辑器)

    整理的linux vi编辑器命令 Vi编辑器,进入方式,输入vi file即可进入编辑模式 1.vi模式(Linux严格区分大小写) Vi所学到的几种模式 模式 主要用途 相应操作 对应命令 普通模式 ...

  7. Linux基础(3)- 正文处理命令及tar命令、vi编辑器、硬盘分区、格式化及文件系统的管理和软连接、硬连接

    一.正文处理命令及tar命令 1)  将用户信息数据库文件和组信息数据库文件纵向合并为一个文件1.txt(覆盖) 2)  将用户信息数据库文件和用户密码数据库文件纵向合并为一个文件2.txt(追加) ...

  8. Linux基础之vi编辑器(二)

    vi 编辑器 man vim 一 打开文件,定义光标 vi +# test       打开文件,定位于#行.vi + test        打开test文件,定位于最后一行.vi +/patter ...

  9. linux vim,vi编辑器的基础

    在之前我也不知道为什么要学vim和vi编辑器,仅仅是听过别人说这个对与linux非常重要. 先说一下为什么要学习这个编辑器.个人的看书理解. 系统管理员的重要工作就是參与与设置某些重要软件的配置文件, ...

随机推荐

  1. kuangbin专题专题四 Heavy Transportation POJ - 1797

    题目链接:https://vjudge.net/problem/POJ-1797 思路:请参考我列出的另一个题目,和这个题目要求的值相反,另一个清楚后,这个写的解释就明白了. 另一个类似题目的博客:h ...

  2. HTML&CSS构建和设计网站

    1.a链接:两个特性,href.target,href里添加mailto:邮箱可以直接链接到其它人的邮箱,添加#id,可以把窗口位置直接定位到该id的元素位置, target:_black可以在新的窗 ...

  3. Java volatile关键字小结

    public class Test { public static void main(String[] args){ } } /* 12.3 Java内存模型 Java内存模型定义了线程与主内存之间 ...

  4. 解决springboot项目请求出现非法字符问题 java.lang.IllegalArgumentException:Invalid character found in the request target. The valid characters are defined in RFC 7230 and RFC 3986

    springboot版本: 2.1.5 最近使用springboot搭建了一个App后台服务的项目,开发接口的时候在本机使用postman工具做请求测试,请求返回一直很正常,但是在前端开发使用h5请求 ...

  5. error: 'commit' is not possible because you have unmerged files.

    解决方案: 1.把修改的文件add下,如:git add bidder_mod/src/common/dragon_bidder_data.cc2.git commit

  6. 个人永久性免费-Excel催化剂插件功能修复与更新汇总篇之九

    第11波-快速批量插入图片并保护纵横比不变 原文链接:https://www.jianshu.com/p/9a3d9aa7ba7e 修复了插入图片有纵向的图片时,插入后还是显示横向的情况. 第83波- ...

  7. Excel催化剂开源第31波-pdf相关功能实现及类库介绍

    在Excel催化剂刚推出的pdf相关功能中,反馈很热烈,不止是用户层面好多人喜欢,也听到在.NET开发群里有询问pdf在winform上展现的功能诉求,一段时间没写开源篇,生怕大家以为Excel催化剂 ...

  8. Error:Failed to resolve: com.android.support:support-annotations:26.0.2

    异常信息记录: Error:Failed to resolve: com.android.support:support-annotations:26.0.2 <a href="ins ...

  9. 浅谈单点登陆(SSO)

    背景 在企业发展初期,企业使用的系统很少,通常一个或者两个,每个系统都有自己的登录模块,运营人员每天用自己的账号登录,很方便. 但随着企业的发展,用到的系统随之增多,运营人员在操作不同的系统时,需要多 ...

  10. Java 常见面试题整理

    操作系统 说一下线程和进程,它们的区别 同步和异步的区别 阻塞和非阻塞的区别 操作系统中死锁的四个必要条件 mmap和普通文件读写的区别,mmap的注意点 CPU密集型和IO密集型的区别 Linux ...