VI是在Linux命令行下常用的文本编辑工具,在服务配置管理过程中经常用到;vi的常见的使用指南,互联网上随处可见,但仅能满足初学者对文档编辑的需求。这里就我自己在使用过程中通常用到的一些技巧操作方法作一个简单总结;重点是在进入vi编辑界面后,对文档的编辑替换方法和多文档的切换做一些提示,同时附带基本操作不详细描述(技巧部分以▲标注)。
内容目录如下
第一课 打开新文件 
第二课 保存文件 
第三课 光标控制和跳转
第四课 文本录入(编辑)
第五课 文本编辑
▲第六课 使用vi打开多个文件

 

(上图为进入vi编辑后的三种模式,注意文中各操作指令所在模式)

第一课 打开新文件 
1、打开新的文件到vi编辑器中
:e filename 
注:上述操作中是指,在命令模式下输入 :(冒号)进入到末行模式,然后使用指令e 打开文档,可在文档名称前输入路径,不输入路径就代表当前目录。
2、打开新的文件到vi编辑器中,并放弃对当前文件的修改
:e! filename
3、 读取文件内容到当前vi编辑器中 
:r filename

第二课 保存文件 
1、 保存对vi编辑器中已打开文件的修改
:w
2、 另存为文件
将vi编辑器中的内容另存为指定文件名
:w myfile
3、未修改退出
没有对vi编辑器中打开的文件进行修改,或已对修改进行了保存,直接退出vi编辑器
:q
3、 保存并退出
对vi编辑器中的文件进行保存并退出vi编辑器
:qw
(▲可在命令模式下使用Shift+两次z键保存退出,个人习惯这样会快些)
4、 不保存退出
放弃对文件内容的修改,并退出vi编辑器
:q!

第三课 光标控制和跳转

1、光标移动和翻页操作 (命令模式下操作)

2、行内快速跳转 (命令模式下操作)

3、文件内行间快速跳转 (行号显示为末行命令,键位操作均在命令模式下)

第四课 文本录入(编辑)
1、从命令模式进入输入模式

2、输入模式的编辑键操作

第五课 文本编辑
1、删除操作 (命令模式下操作)

2、撤销操作 (命令模式下操作)

3、复制与粘贴操作 (命令模式下操作)

4、字符串查找操作

▲5、字符串替换操作

▲第六课 使用vi打开多个文件
在输入vi命令时使用多个文件名作为参数
vi file1 file2 file3 ...
vi多文件操作命令

vi入门到精通的更多相关文章

  1. 15、ASP.NET MVC入门到精通——MVC-路由

    本系列目录:ASP.NET MVC4入门到精通系列目录汇总 Routing(路由) – URL url 作为广泛使用的Web用户接口,需要被重视 好的Url应该满足如下条件: URL应为获取某种资源提 ...

  2. Redis从入门到精通:初级篇

    原文链接:http://www.cnblogs.com/xrq730/p/8890896.html,转载请注明出处,谢谢 Redis从入门到精通:初级篇 平时陆陆续续看了不少Redis的文章了,工作中 ...

  3. 【转】Zabbix 3.0 从入门到精通(zabbix使用详解)

    [转]Zabbix 3.0 从入门到精通(zabbix使用详解) 第1章 zabbix监控 1.1 为什么要监控 在需要的时刻,提前提醒我们服务器出问题了 当出问题之后,可以找到问题的根源   网站/ ...

  4. Redis从入门到精通:初级篇(转)

    原文链接:http://www.cnblogs.com/xrq730/p/8890896.html,转载请注明出处,谢谢 Redis从入门到精通:初级篇 平时陆陆续续看了不少Redis的文章了,工作中 ...

  5. CentOS7入门到精通实战课程课后习题

    Linux自动化运维系列①: CentOS7入门到精通实战--->传送门 http://edu.51cto.com/course/13055.html 01.系统入门课后习题 1.口述一个命令执 ...

  6. [转帖]linux常用命令大全(linux基础命令入门到精通+实例讲解+持续更新+命令备忘录+面试复习)

    linux常用命令大全(linux基础命令入门到精通+实例讲解+持续更新+命令备忘录+面试复习) https://www.cnblogs.com/caozy/p/9261224.html 总结的挺好的 ...

  7. 《LabVIEW 虚拟仪器程序设计从入门到精通(第二版)》一1.3 小结

    本节书摘来自异步社区<LabVIEW 虚拟仪器程序设计从入门到精通(第二版)>一书中的第1章,第1.3节,作者 林静 , 林振宇 , 郑福仁,更多章节内容可以访问云栖社区"异步社 ...

  8. <程序员从入门到精通> -- How

    定位 自己才是职业生涯的管理者,想清楚自己的发展路径: 远期的理想是什么?近期的规划是什么?今日的任务和功课又是什么? 今日之任务或功课哪些有助于近期之规划的实现,而近期之规划是否有利于远期之理想? ...

  9. 【无私分享:从入门到精通ASP.NET MVC】从0开始,一起搭框架、做项目 目录索引

    索引 [无私分享:从入门到精通ASP.NET MVC]从0开始,一起搭框架.做项目(1)搭建MVC环境 注册区域 [无私分享:从入门到精通ASP.NET MVC]从0开始,一起搭框架.做项目(2)创建 ...

随机推荐

  1. echarts 怎样去掉白色边框线 和怎样去除背景中的网格

    echarts怎样去掉白色边框线: echarts怎样去除背景中的网格线

  2. AngularJS报错:[$injector:unpr] Unknown provider: $templateRequestProvider

    在页面中由上到下引用了: angular.js angular-route.js 创建model的时候也写明了依赖: var someApp = angular.module('someApp',[' ...

  3. GPG入门教程

    原文地址:http://www.ruanyifeng.com/blog/2013/07/gpg.html 作者: 阮一峰 日期: 2013年7月12日 前两篇文章,我介绍了RSA算法. 今天,就接着来 ...

  4. python测试开发django-30.发送附件EmailMessage

    前言 Django的 send_mail() 和 send_mass_mail() 函式事实上是对 EmailMessage 类使用方式 的一个轻度封装.send_mail() 和相关的其他封装函式并 ...

  5. U转串口驱动安装

    在装有Win7 32位系统的台式机上 先卸载旧驱动,再又一次安装. 对设备管理器里的U转串口设备从本地更新驱动.选择下图文件 系统弹出红色提示框(是否安装XXXX驱动),选择安装,随后该设备由无法启动 ...

  6. HDR和bloom效果的区别和关系

    什么是HDR?        谈论游戏画面时常说的HDR到底是什么呢?HDR,本身是High-Dynamic Range(高动态范围)的缩写,这本来是一个CG概念.HDR的含义,简单说,就是超越普通的 ...

  7. clojure中符号symbols 和变量vars的正确理解

    原地址  http://stackoverflow.com/questions/11662084/why-does-clojure-distinguish-between-symbols-and-va ...

  8. Java-----隐藏手机号中间四位,身份证号码中间几位

    phone.replaceAll("(\\d{3})\\d{4}(\\d{4})","$1****$2");152****4799 idCard.replace ...

  9. 冰川时代5:星际碰撞Ice Age: Collision Course迅雷下载

    影片讲述松鼠奎特为了追松果,偶然引发了宇宙事件,改变并威胁着冰川时代的世界.为了拯救自己,话唠树懒希德.猛犸象曼尼.剑齿虎迪亚哥,以及别的动物群族必须离开家园,踏上了他们充满喜剧色彩的冒险旅程,他们来 ...

  10. Android中获取屏幕长宽的方法

    package com.kale.screen; import android.annotation.SuppressLint; import android.app.Activity; import ...