0 目录
  1.   新建文件夹
  2.   常用的命令
  3.    三种模式及切换
  4.    vi编辑器的启动选项及后续相关操作
  5.  其他--替换文本
  6.  其他--写入另一个文件
 
 
1  新建文件夹 
 vi [目录名/文件名]   #如果文件名是目录下不存在的文件,则vi编辑器会新建一个文件

            

 
2  常用的命令

  • a:在当前字符后添加文本
  • A:在行末添加文本
  • i:在当前字符前插入文本
  • I:在行首插入文本
  • o:在当前行后面插入一空行
  • O:在当前行前面插入一空行
  • 上面是在命令模式转文本输入模式的转化
  • :wq:在命令模式下,执行存盘退出操作
  • :w:在命令模式下,执行存盘操作
  • :w!:在命令模式下,执行强制存盘操作
  • :q:在命令模式下,执行退出vi操作
  • :q!:在命令模式下,执行强制退出vi操作
  • :e文件名:在命令模式下,打开并编辑指定名称的文件
  • :n:在命令模式下,如果同时打开多个文件,则继续编辑下一个文件
  • :f:在命令模式下,用于显示当前的文件名、光标所在行的行号以及显示比例
  • :set number:在命令模式下,用于在最左端显示行号
  • :set nonumber:在命令模式下,用于在最左端不显示行号
  • 上面都在末行模式下适用
  • x或X:删除一个字符,x删除光标后的,而X删除光标前的
  • D:删除从当前光标到光标所在行尾的全部字符
  • /字符串:文本查找操作,用于从当前光标所在位置开始向文件尾部查找指定字符串的内容,查找的字符串会被加亮显示
  • ?name:文本查找操作,用于从当前光标所在位置开始向文件头部查找指定字符串的内容,查找的字符串会被加亮显示
  • ndd:删除当前行及其后n-1行;
    nyy:将当前行及其下n行的内容保存到寄存器?中,其中?为一个字母,n为一个数字
    P(大写):粘贴文本操作,用于将缓存区的内容粘贴到当前光标所在位置的下方
    p(小写):粘贴文本操作,用于将缓存区的内容粘贴到当前光标所在位置的上方
  • ZZ :文件改动,即保存退出  文件没有改动,即直接退出
  • 上面是在命令模式下适用
  • ESC:从文本输入模式切换到命令模式
  •  
    
 
3  三种模式及切换 
  • 命令模式:用户的输入不会在屏幕上显示,只会被执行,例如删除字符,移动光标等,

                        vi编辑器处于任何模式下时(即文本输入模式和末行模式,或者不清楚当前是什么模式),只需按ESC键即可进入命令模式
  • 文本输入模式:输入信息(i),状态行的左下角出现“-INSERT-”字样
  • 末行模式:用户的输入被显示在vi编辑器界面的最下方(状态行),可以实现保存、退出、查找等功能(按ESC键)
  • vi编辑器启动后,或者用vi编辑器新建文件,打开文件,vi编辑器均处于命令模式
  • 三种模式的切换:
                                          

 
 
  4  vi编辑器的启动选项及后续相关操作
  • vi  -R  filename    
    • 以只读的方式查看文件filename的内容
  • vi  -c  vi编辑命令     
    • 例如vi  -c   /most   filename  #打开文件,并所搜most字符串,将光标定位在匹配的行
    • 例如vi  -c   “set nu”  filename  #打开文件,并显示行号,注意加“”
    • vi   +number  filename 
  • vi  filename1  filename2   #同时打开两个文件
  • 先显示第一个文件,然后输入命令:n切换到下一个文件,前提是你对刚才的文件没有修改,如果修改了,有两种选择
    • :n!#放弃修改,切换到下一个文件
    • :w    #先保存,然后再输入:n切换到下一个文件
  • :ar    #显示当前编辑的文件名,用方括号括起来的文件​
  • :n  切换到下一个文件
  • :prev  切换到上一个文件
  • :e  filename2  
    • 不退出vi编辑器,编辑另一个文件filename2
    • 如果filename1做了修改,要先对filename1做处理后再编辑,即
      • 先输入命令:w  ,然后再输入命令:e filename2
      • 或者:e!  filename2   #不对filename1做保存
  •  
    
   5   其他--替换文本
        在末行模式下,替换涉及的参数
  • s         替换当前行中第一个匹配的字符串
  • *,*s      替换指定行数内的字符串
  • %s     全文替换每行第一个匹配到的字符串
  • g          替换命令后加上此参数,替换匹配行中出现的所有匹配的字符串
  • 举例
    • :s/unix/UNIX
    • 替换当前行第一个匹配到的unix字符串为UNIX
    • :s/unix/UNIX/g
    • 替换当前行所有匹配到的unix字符串为UNIX
    • :1,5s/unix/UNIX
    • 替换第1行到第5行第一个匹配到的unix字符串为UNIX
    • :1,5s/unix/UNIX/g
    • 替换第1行到第5行所有匹配到的unix字符串为UNIX
    • :%s/unix/UNIX
    • 全文替换每行第一个匹配到的unix字符串为UNIX
    • :%s/unix/UNIX/g
    • 全文替换每行所有匹配到的unix字符串为UNIX
            
6   其他--写入另一个文件
  • vi filename1
  • :5  w  filename2 
    • 把filename的第五行内容写入到文件filename2
  • :5,10   w  filename2
    • 把filename的第五行到第十行的内容写入到文件filename2
    • v可视模式,hljk移动选择内容,冒号,  w  filename
    • 把系统中的虚拟用户另存为一个文件
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Unix\Linux | 总结笔记 | vi编辑器的更多相关文章

  1. linux学习笔记--vi与vim编辑器

    vi编辑器全名为Visual Interface,即为可视化接口,类似于Windows中的记事本 vim相当于是vi的一个升级版本,包含vi的一切操作命令,vim相对于vi做了哪些提升: 1.vim支 ...

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

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

  3. Linux学习之一--VI编辑器的基本使用

    vi编辑器是Linux系统下标准的编辑器.而且不逊色于其他任何最新的编辑器.可是会用的有多少呢.下面介绍一下vi编辑器的简单用法和部分命令.让你在Linux系统中畅行无阻. 基本上vi可以分为三种状态 ...

  4. Linux下的vi编辑器与gcc工具的使用

    最近在网上找了些视频,自学了一点Linux环境下,C编程的方法. 注 vi与vim是有区别的,vim打开的源码文件其中的关键字是有颜色的. vi编辑器有3种模式,命令行模式,插入模式,底行模式. 如果 ...

  5. Linux下 Vim(Vi)编辑器的使用

    vi编辑器 vi是UNIX和类UNIX环境下的可用于创建文件的屏幕编辑器.vi有两种工作模式:命令模式和文本输入模式.启动vi需要输入vi,按[Spacebar]键并输入文件名后回车. 切换模式键 v ...

  6. linux操作系统3 vi编辑器

    知识内容: 1.Linux基础命令复习 2.vi模式和基本操作 3.vi常用快捷键 一.Linux基础命令复习 目录(文件夹)操作 cd 进入目录 (tab自动补全) pwd 查看当前目录 mkdir ...

  7. linux系统之-vi编辑器

    在linux系统使用中,掌握熟练的vi编辑器,可以提高linux工作效率.那么vi编辑器的使用方法有哪些呢? vi编辑器可在绝大部分linux发行版中使用. Vi编辑器的作用:创建或修改文件:维护li ...

  8. linux基础(Vi编辑器)

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

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

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

随机推荐

  1. SQL Server vNext CTP 1.2

    https://msdn.microsoft.com/en-us/library/mt788653.aspx

  2. eclipse需要的环境变量就两个,一个是java_home指向JDK。另一个是Tomcat,自己去preference-sever下new一个

    1.eclipse需要的环境变量就两个,一个是java_home指向JDK.另一个是Tomcat,自己去preference-sever下new一个

  3. http返回写入问题

    1.服务器返回写的数据全是通过response对象,response.getWriter().print(msg);这样就返回写出数据了. 比如: logger.info("encrypte ...

  4. Linux监測某一时刻对外的IP连接情况

    相信大家都熟悉netstat命令吧,这里就主要採用此命令.网上流传的DDoS Deflate工具就是採用IP数量来统计对外连接数,然后结合Iptables的方法来实现某个IP增加黑名单和解禁某IP n ...

  5. storm的例子,一个非常好的网址

    https://insight.io/github.com/apache/storm/tree/HEAD/examples/storm-elasticsearch-examples/src/main/ ...

  6. JAVA_the user operation is waiting怎么办

    彻底解决 MyEclipse出现the user operation is waiting的问题   2011-05-31 10:32:30|  分类: 软件编程 |  标签:java  myecli ...

  7. iOS iOS8中 问题"registerForRemoteNotificationTypes: is not supported in iOS 8.0 and later" 解决方式

    问题重述: iOS 8中改变了通知注冊的方式,假设App须要同一时候支持iOS 7 和 8 的话,须要首先检查selector. 解决方式:在Xcode 6中 - (BOOL)application: ...

  8. hdu4941 Magical Forest

    Problem Description There is a forest can be seen as N * M grid. In this forest, there is some magic ...

  9. Android经常使用设计模式(二)

    继上一篇 Android经常使用设计模式(一)里认识了观察者.适配器.代理等三种模式,这一篇将会解说下面三种模式: 工厂模式 单例模式 命令模式 1.工厂模式(Factory Pattern) 工厂模 ...

  10. PRD编写Axure内直接编辑

    流程&页面&交互&逻辑 功能点: 1,选项类 设置默认值. 2,输入文本类 设置最多最少字符数. 3,功能按钮,如提交.发布. 判断敏感词,如果有,则点击发布的时候,悬浮提醒“ ...