Linux Vi 文本编辑器常用命令

Linux Vi 文本编辑器常用命令*LinuxVi文本编辑器常用命令**引言:在Linux中我们常用的文本编辑器有Vi,Vim(Vi的增强版)。而且vi编辑器不仅仅是适用于Linux,它是所有Unix以及Linux系统下的标准编辑器,几乎适用于Unix、Linux系统的所有版本。vi或vim虽然没有Windows操作系统中的图形界面编辑器那样点鼠标的简单操作,但vi编辑器在系统管理、服务器管理字符界面中,永远不是图形界面的编辑器能比的。它能轻易地创建和修改文本文件,维护Linux系统中的配置文件。其实刚开始的时候我也觉得很不习…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

*Linux Vi 文本编辑器常用命令

**
引言:在Linux中我们常用的文本编辑器有Vi,Vim(Vi的增强版)。而且vi编辑器不仅仅是适用于Linux,它是所有Unix以及Linux系统下的标准编辑器,几乎适用于Unix、Linux系统的所有版本。vi或vim虽然没有Windows操作系统中的图形界面编辑器那样点鼠标的简单操作,但vi编辑器在系统管理、服务器管理字符界面中,永远不是图形界面的编辑器能比的。它能轻易地创建和修改文本文件,维护Linux系统中的配置文件。其实刚开始的时候我也觉得很不习惯,但是用的多了渐渐就熟悉了。个人觉得掌握这些命令没有必要刻意的记忆,遇到不会的查找一下表就好了,用的多了自然就记得了。

首先介绍一下主要内容:
Vi编辑器三种工作模式
1、命令模式(command mode):
控制屏幕光标的移动,字符,子或行的删除,移动,复制到某区段。以及起到插入模式(Insert mode)和末行模式(last line mode)的桥梁作用。
2、插入模式 (Insert mode):
只有在插入模式下才可以进行文字输入,按[ESC]键可以退回到命令模式。
3、末行模式(last line mode):
将文件保存或者退出Vi,也可以设置插入环境,如:寻找字符串,行号等。
4、三种模式之间的切换
注意:三种模式之间不是任意切换的,只有在命令模式下才可以进入插入模式和末行模式。

在这里插入图片描述按[a]键进入插入模式后,是当前光标所在位置之后开始输入文字;
按[i]键进入插入模式后, 是当前光标所在位置之前开始输入文件;
按[o]键进入插入模式后,是在光标所在位置下一行添加新的一行,从行首开始输入文字;
按[O]键进入插入模式后,是在光标所在位置上一行添加新的一行,从行首开始输入文字;
按[r]键替换当前光标所在位置的字符;
按[R]键可以替换当前光标所在位置之后的字符。

5、保存或者退出编辑器
:q 退出而且不保存修改的内容
:q! 强制退出不保存修改的内容
:wq 退出并且保存修改的内容
:wq! 强制保存修改的内容然后退出(修改了只读文件会用到)

6、光标移动命令
对于我而言,比较喜欢上下左右方向键,字母 h (左) ,j (下), k(上),l(右)也是可以的但是总感觉有点奇怪(题外话:可能是单机游戏打多了)
^ 光标移到行首
$ 光标移到行尾
shift+g 光标移动到文件最后一行
gg 光标移动到文件第一行

7、控制命令
打开一个内容很多的文件的时候经常用到。
Ctrl+d 向下滚半屏
Ctrl+u 向上滚半屏
Ctrl+f 向下滚全屏
Ctrl+b 向上滚全屏

8、编辑命令
主要是进入编辑状态,也就是insert状态
i 光标当前位置开始编辑
o 光标的下一行开始编辑
shift+o 光标的上一行开始编辑

9、删除命令
dd 删除一行,可以带个数字,如6dd,表示向下删除6行
d$ 删除光标到行尾的内容(也可以使用ctrl+d)
d^ 删除光标到行首的内容
x 删除光标位置的字符(向后删除)
shift+x 删除光标位置的字符(向前删除)

10、查找命令
/String 查找一个字符串(向下开始)
?String 查找一个字符串(向上开始)
n 向后查找下一个
shift+n 向前查找下一个

11、粘贴复制命令
yw 复制一个单词
yy 复制一行,和删除dd一样可以带个数字,6yy复制六行(向下复制6行)
p 粘贴到光标位置的下一行
shift+p 粘贴到光标位置的上一行

12、同时打开两个文件
比如:aa.txt ss.txt
打开第一个文件vi aa.txt然后输入下面的命令
:sp ss.txt 此时就在同一个窗口打开另外一个ss.txt
Ctrl+w 进行两个文件上下窗口切换(需要再按上下方向键)

13、其他常用命令
:e! 重新加载文件,再查看日志文件的时候可以用,不断在变化的文件。
shift+j 将下一行拼接到上一行
u 撤销
:set nu 显示行号
:set nonu 取消显示行号
:n 跳转到第n行(按回车才会跳)
Ctrl+g 会在显示屏的底部显示文件名字和总的行数,当前光标的位置行号
~ 这个将会改变光标位置的字符的大小写
Ctrl +a 跳到当前命令行里的首位,比如 cd /etc/profile ,这个是一个文件,我想改成vi /etc/profile 就可以按 ctrl+a 光标就会移到cd位置,如果碰到比较长的命令,这个还是非常的实用的
ctrl+e 跳到当前命令行的末尾。和ctrl+a 相反

以上就是我归纳的一些常用的指令,如有一些不当的地方还望指正。

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

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

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


相关推荐

  • selenium的PO模式

    selenium的PO模式PageObject模式是Selenium中的一种测试设计模式,主要是将每一个页面设计为一个Class(封装在一个class类中),其中包含页面中需要测试的所有元素(按钮,输入框,标题等)的属性和操作,这样在Selenium测试页面中可以通过调用页面类来获取页面元素,这样巧妙的避免了当页面元素id或者位置变化时,需要改测试页面代码的情况。当页面元素id变化时,只需要更改测试页Class中页面的属…

    2022年5月20日
    61
  • mysql截取字符串去重,mysql 截取字符串 去重 拼接

    mysql截取字符串去重,mysql 截取字符串 去重 拼接1:字符串截取LEFT(guid_,LENGTH(guid_)-5)//1001-1002-1003截取为1001-10022:判断是否存在某字符串中IN(‘1001′,’1002′,’1003’)//whereidin(xxxx)可以用查询的某个字段直接whereidin(selectidfromxxxx)3:根据某个字段去重复在查询结果中加入COUNT(DIS…

    2022年6月10日
    180
  • 用于重新编译的工具和命令

    用于重新编译的工具和命令

    2021年11月24日
    32
  • 创建pytorch环境_Udacity pytorch

    创建pytorch环境_Udacity pytorch在window下安装pippip更换国内镜像源安装pytorchAnaconda+Pycharm环境下的PyTorch配置方法

    2022年8月25日
    3
  • 面试让HR都能听懂的MySQL锁机制,欢声笑语中搞懂MySQL锁「建议收藏」

    面试让HR都能听懂的MySQL锁机制,欢声笑语中搞懂MySQL锁「建议收藏」腾讯云数据库负责人林晓斌说过:“我们面试MySQL同事时只考察两点,索引和锁”。言简意赅,MySQL锁的重要性不言而喻。本文通过同事“侨总”的一场面试,带你通俗易懂的掌握MySQL各种锁机制,希望可以帮到你!

    2022年5月1日
    33
  • Java: Hook技术[通俗易懂]

    Java: Hook技术[通俗易懂]一、什么是Hook  Hook翻译成中文就是勾子的意思,在java中它表示在事件到达终点前进行拦截或监控的一种行为。 二、Hook的实现实现hook我们必须要知道java的反射和动态代理。 1、反射  反射是java的查看、检测、修改自身的一种行为。  在编译阶段,编译器将我们编写的java文件编译成.class文件。而在运行期,jvm又将.class文件通过…

    2022年5月9日
    143

发表回复

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

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