vim与vi的区别,及常用操作,有查找关键词,向上向下翻页,快速跳到一行首末尾,设置取消行号,撤销编辑,跳到最后一行,翻页

vim与vi的区别,及常用操作,有查找关键词,向上向下翻页,快速跳到一行首末尾,设置取消行号,撤销编辑,跳到最后一行,翻页

区别:vi和vim都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面。vim的这些优势主要体现在以下几个方面:1、多级撤消我们知道在vi里,按 u只能撤消上次命令,而在vim里可以无限制的撤消。2、易用性vi只能运行于unix中,而vim不仅可以运行于unix,windows ,mac等多操作平台。3、语法加亮vim可以用不同的颜色来加亮你的代码。4、可视化操作就是说vim不仅可以在终端运行,也可以运行于x window、 mac os、 windows。5、对vi的完全兼容某些情况下,你可以把vim当成vi来使用。vim都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面。vim的这些优势主要体现在以下几个方面:1、多级撤消我们知道在vi里,按 u只能撤消上次命令,而在vim里可以无限制的撤消。2、易用性vi只能运行于unix中,而vim不仅可以运行于unix,windows ,mac等多操作平台。3、语法加亮vim可以用不同的颜色来加亮你的代码。4、可视化操作就是说vim不仅可以在终端运行,也可以运行于x window、 mac os、 windows。5、对vi的完全兼容某些情况下,你可以把vim当成vi来使用。
使用:vi和vim是我们在Linux中最常用的编辑器。我们有必要介绍一下vi(vim)最简单的用法,以让Linux入门级用户在最短的时间内学会使用它
翻页:ctrl+F先下翻页  ctrl+b向上翻页


当我们按ESC进入Command模式后,我们可以用下面的一些键位来移动光标;
j 向下移动一行;  
k 向上移动一行;  
h 向左移动一个字符;  
l 向右移动一个字符;  
ctrlb  向上移动一屏;  
ctrlf  向下移动一屏;  
向上箭头    向上移动;  
向下箭头    向下移动;  
向左箭头    向左移动;  
向右箭头    向右移动;   
我们编辑一个文件时,对于 j、k、l和h键,还能在这些动作命令的前面加上数字,比如 3j,表示向下移动3行。

查找和替换功能

首先,我们要进入ESC键,进入命令模式;
我们输入/或?就进入查找模式了;  
/SEARCH  注:正向查找,按n键把光标移动到下一个符合条件的地方; 
?SEARCH  注:反向查找,按shiftn 键,把光标移动到下一个符合条件的  
举一例:比如我想在一个文件中找到ab单词,我应该如下做:首先按ESC键,进入命令模式,然后输入/ab  或 ?ab当我们按ESC进入Command模式后,我们可以用下面的一些键位来移动光标;
j 向下移动一行;  
k 向上移动一行;  
h 向左移动一个字符;  
l 向右移动一个字符;  
ctrlb  向上移动一屏;  
ctrlf  向下移动一屏;  
向上箭头    向上移动;  
向下箭头    向下移动;  
向左箭头    向左移动;  
向右箭头    向右移动;   
我们编辑一个文件时,对于 j、k、l和h键,还能在这些动作命令的前面加上数字,比如 3j,表示向下移动3行。

查找和替换功能

首先,我们要进入ESC键,进入命令模式;
我们输入/或?就进入查找模式了;  
/SEARCH  注:正向查找,按n键把光标移动到下一个符合条件的地方; 
?SEARCH  注:反向查找,按shiftn 键,把光标移动到下一个符合条件的  
举一例:比如我想在一个文件中找到ab单词,我应该如下做:首先按ESC键,进入命令模式,然后输入/ab  或 ?ab
vi撤销命令  :u
恢复撤销命令:ctrl+r
显示所有行号:": set nu"
显示当前行号:“:nu”
不显示行号:“:set nonu”
怎么快速跳到一行的开头和行尾:开头:0
						行尾:$行尾:$
 

跳到最后一行:gg:命令将光标移动到文档开头
 

G:命令将光标移动到文档末尾

 

 

比如想跳转到文本的第12行,可以执行如下命令:

(1)12gg / 12G

(2):12

(3)打开文件时输入vim +12 filename

快速清空文件内容:

$ : > filename 
$ > filename 
$ echo “” > filename 
$ echo > filename 
$ cat /dev/null > filename

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/106306.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 彻底解决Intellij IDEA中文乱码问题(亲测成功)「建议收藏」

    关于JAVA IDE开发工具,Eclipse系列和Intelli IDEA是大部分公司的主要选择,从开发者的选择角度,Intellij IDEA似乎比Eclipse系列更受欢迎一些。当我们使用Intellij IDEA开发时,我们发现出现中文乱码问题,造成中…

    2022年3月13日
    2.9K
  • linux查看cuda版本「建议收藏」

    linux查看cuda版本「建议收藏」1.cat/usr/local/cuda/version.txt2.或者nvcc-v

    2022年6月11日
    60
  • PhpSpreadsheet_php读取文件内容

    PhpSpreadsheet_php读取文件内容·1、实例化Spreadsheet对象<?phpnamespaceapp//给类文件的命名空间起个别名usePhpOffice\PhpSpreadsheet\Spreadsheet;//Xlsx类保存文件功能类usePhpOffice\PhpSpreadsheet\Writer\Xlsx;//实例化Spreadsheet对象$spreadsheet=newSpreadsheet();2、Spreadsh

    2022年9月17日
    2
  • hashmap线程安全吗 什么解决方案_hashtable为什么是线程安全

    hashmap线程安全吗 什么解决方案_hashtable为什么是线程安全前言该试题从互联网获得,真实性没有考究,加上本人学识浅薄,所以面试题参考为主,解析分享为主。若对解析有不同看法,还请评论指正。谢谢。HashMap为什么不是线程安全?以JDK1.8的HashMap为例,引用作者:一字马胡所写文章中的一张图:上图为…

    2022年9月25日
    2
  • SQLSTATE各种状态码

    SQLSTATE各种状态码根据 X Open 和 SQLAccessGro 规范 1992 所进行的定义 SQLERROR 返回 SQLSTATE 值 SQLSTATE 值是包含五个字符的字符串 五个字符包含数值或者大写字母 代表各种错误或者警告条件的代码 SQLSTATE 有个层次化的模式 头两个字符标识条件的通常表示错误条件的类别 后三个字符表示在该通用类中的子类 成功的状态是由 0000

    2025年10月12日
    4
  • 宿主机和虚拟机的网络_vmware独享宿主机网卡

    宿主机和虚拟机的网络_vmware独享宿主机网卡问题描述:宿主机为win10家庭版,虚拟机为Centos7,上午还可以正常的进行互通,中间应该是弹出来一个外设的接入通知,其他的没有什么明显的操作,下午就不能互相访问了,原因不明。解决方法:首先检查虚拟机的网络配置,分为如下几步:1、编辑–>虚拟机网络编辑器,选择桥接模式,同时选择要桥接的网络:这个网路需要和宿主机中的网络保持一致,如果宿主机中存在多个网络连接,比如无线连接和有线连接,那就根据实际需要,看虚拟机需要连接到哪个网络中,就对应选择。选择完之后,确

    2022年8月21日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号