linux vim怎么退出编辑模式_shell退出vi编辑器

linux vim怎么退出编辑模式_shell退出vi编辑器用的命令是:ctrl+Rvi编辑器中有三种状态模式1.命令模式2.输入模式3.末行模式三种模式间的相互转换vi编辑器的启动与退出直接进入编辑环境$vi进入编辑环境并打开(新建)文件$vimyfile退出vi编辑环境输入末行命令放弃对文件的修改,并退出编辑器:q!文件保存与另存为保存文件保存对vi编辑器中已打开文件的修改:w另存为文件将vi编辑器中的内容另存为指定文件名:wmyfile退…


Jetbrains全系列IDE稳定放心使用

用的命令是:ctrl + R

vi编辑器中有三种状态模式

1.命令模式

2.输入模式

3.末行模式

三种模式间的相互转换

vi编辑器的启动与退出

直接进入编辑环境

$ vi

进入编辑环境并打开(新建)文件

$ vi myfile

退出vi编辑环境

输入末行命令放弃对文件的修改,并退出编辑器

:q!

文件保存与另存为

保存文件

保存对vi编辑器中已打开文件的修改

:w

另存为文件

将vi编辑器中的内容另存为指定文件名

:w myfile

退出vi编辑器的多种方法

未修改退出

没有对vi编辑器中打开的文件进行修改,或已对修改进行了保存,直接退出vi编辑器

:q

保存并退出

对vi编辑器中的文件进行保存并退出vi编辑器

:wq

不保存退出

放弃对文件内容的修改,并退出vi编辑器

:q!

光标的移动和翻页操作

操作类型光标操作键功能

光标移动h向左移动光标

l向右移动光标

k向上移动光标

j向下移动光标

翻页Ctrl + f向前翻整页

Ctrl + b向后翻整页

Ctrl + u向前翻半页

Ctrl + d向后翻半页

行内快速跳转

操作键功能

^将光标快速跳转到本行的行首字符

$将光标快速跳转到本行的行尾字符

w将光标快速跳转到当前光标所在位置的后一个单词的首字母

b将光标快速跳转到当前光标所在位置的前一个单词的首字母

e将光标快速跳转到当前光标所在位置的后一个单词的尾字母

文件内行间快速跳转

命令功能

:set nu 在编辑器中显示行号

:set nonu 取消编辑器中的行号显示

1G跳转到文件的首行

G跳转到文件的末尾行

#G跳转到文件中的第#行

进入输入模式

命令功能

i在当前光标处进入插入状态

a在当前光标后进入插入状态

A将光标移动到当前行的行末,并进入插入状态

o在当前行的下面插入新行,光标移动到新行的行首,进入插入状态

O在当前行的上面插入新行,光标移动到新行的行首,进入插入状态

cw删除当前光标到所在单词尾部的字符,并进入插入状态

c$删除当前光标到行尾的字符,并进入插入状态

c^命令删除当前光标之前(不包括光标上的字符)到行首的字符,并进入插入状态

输入模式的编辑键操作

按键功能

方向键进行上下左右方向的光标移动

Home快速定位光标到行首

End快速定位光标到行尾

PageUp进行文本的向上翻页

PageDown进行文本的向下翻页

Backspace删除光标左侧的字符

Del删除光标位置的字符

删除操作

命令功能

x删除光标处的单个字符

dd删除光标所在行

dw删除当前字符到单词尾(包括空格)的所有字符

de删除当前字符到单词尾(不包括单词尾部的空格)的所有字符

d$删除当前字符到行尾的所有字符

d^删除当前字符到行首的所有字符

J删除光标所在行行尾的换行符,相当于合并当前行和下一行的内容

撤消操作

命令功能

u取消最近一次的操作,并恢复操作结果

可以多次使用u命令恢复已进行的多步操作

U取消对当前行进行的所有操作

Ctrl + r对使用u命令撤销的操作进行恢复

复制与粘贴操作

命令功能

yy复制当前行整行的内容到vi缓冲区

yw复制当前光标到单词尾字符的内容到vi缓冲区

y$复制当前光标到行尾的内容到vi缓冲区

y^复制当前光标到行首的内容到vi缓冲区

p读取vi缓冲区中的内容,并粘贴到光标当前的位置(不覆盖文件已有的内容)

字符串查找操作

命令功能

/word从上而下在文件中查找字符串“word”

?word 从下而上在文件中查找字符串“word”

n定位下一个匹配的被查找字符串

N定位上一个匹配的被查找字符串

字符串替换操作

命令功能

:s/old/new 将当前行中查找到的第一个字符“old” 串替换为“new”

:s/old/new/g 将当前行中查找到的所有字符串“old” 替换为“new”

:#,#s/old/new/g 在行号“#,#”范围内替换所有的字符串“old”为“new”

:%s/old/new/g 在整个文件范围内替换所有的字符串“old”为“new”

:s/old/new/c 在替换命令末尾加入c命令,将对每个替换动作提示用户进行确认

vi编辑器的在线帮助

使用vi在线帮助需安装的软件包

vim-common-6.3.035-3.i386.rpm

vim-enhanced-6.3.035-3.i386.rpm

软件包在RHEL5的第2张安装光盘

使用vi在线帮助的两种方法

在vi编辑器中按“F1”键

输入help末行命令

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

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

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

相关推荐

  • hmacsha256算法原理_一次解析

    hmacsha256算法原理_一次解析需要支持HMACSHA256算法,GitHub找到源码具体地址https://github.com/aperezdc/hmac-sha256/blob/master/hmac-sha256.c移植到目标平台,稍作处理测试ok了,原理:1.输入密钥key和固定的数据(0x36)进行异或操作生成一个64B的数据kx;2.使用kx+输入数据执行sha256算法得到32B的out;3.使用…

    2022年10月22日
  • bootstrap的一些方法「建议收藏」

    bootstrap的一些方法「建议收藏」bootstrap就是相当于对标签的id和class的封装,和一些js的封装。

    2022年7月2日
  • 变长数组VLA_数组的大小长度可以改变吗

    变长数组VLA_数组的大小长度可以改变吗C99标准中,支持变长数组,即方括号[]中可以用为一个变量,但是很多编译器并不能很好地支持。c++11标准中,不支持变长数组,即方括号[]中必须为常量表达式。c++标准支不支持变长数组,并不重要,因为完全可以自己实现。变长数组(VLA):即在运行时候确定数组的长度静态数组:编译时数组长度就定死了,不能对数组进行增、删、改动态数组:运行时才确定数组的长度,可以对数组进行增、删、改…

    2022年10月25日
  • ESP8266模块使用完整教程「建议收藏」

    在我入门ESP8266小黄板的过程中,过程是艰难的,因为网络上的资料太多太乱,官网上的资料不算太完备,而在技术交流群里面的就更乱了,所以想按自己学习所总结到的经验来分享给大家。资源链接:http://pan.baidu.com/s/1i4qjrY9请使用本教程之前先下载以上资源。前言:esp8266我用到的是小黄板测试板,而ESP8266主要有两种固件,一种是AT固件,一种是IOT固件。前者用串

    2022年4月18日
  • 五种常用的MySQL图形化管理工具

    五种常用的MySQL图形化管理工具MySQL的管理维护工具非常多,除了系统自带的命令行管理工具之外,还有许多其他的图形化管理工具,这里我介绍几个经常使用的MySQL图形化管理工具,供大家参考。MySQL是一个非常流行的小型关系型数据库管理系统,2008年1月16号被Sun公司收购。目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了

    2022年6月15日
  • matlab中画柱状图的函数_科学柱状图怎么画

    matlab中画柱状图的函数_科学柱状图怎么画论文中需要画图进行比较,感觉还是matlab画起来比较方便,先把自己画的图及matlab代码放上。y=[300311;390425;312321;250185;550535;420432;410520;];b=bar(y);gridon;ch=get(b,’children’);set(gca,’XTickLabel’,{‘0′,’1′,’2′,’3’,’…

    2022年10月19日

发表回复

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

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