关键词:
VI编辑器:全屏文本编辑器
VI:visual interface,可视化界面;
S.U.N:bill joy,
Vim相对于vi有更多的新特性:
1.语法着色显示;
2.更多的命令;
3.历史纪录;
Vi:模式化文本编辑器
模式:编辑模式(命令模式),默认工作模式
插入模式(输入模式),文本信息的自由编辑,在编辑器的左下角有“insert”标记。
Ex模式(末行模式),对于编辑器本身某些属性和功能的设定;也可以进行文本的编辑操作;
其他辅助模式:
替换模式:输入的信息直接替换光标所在位置的内容;
可视化模式:
Vi/vim的操作:
一.打开vi的操作界面
1.vi/vim命令;
2.vim file;在{1.file存在,就直接使用vim打开此文件,默认是将光标放置于该文件的起始位置;2.如果file不存在,直接以新建文件的方式打开,若执行保存命令则文件会被写入磁盘;若不保存,文件会消失}
3.vim +# file; 再打开指定文件是将光标直接定位在文件的第#行的行首。
4.vim + file; 再打开指定文件时直接将光标停留定位在在后一行行首。
5.vim +/PATTERN/;打开指定的文件时,将光标定位在被PATTERN匹配到的行的行首。
二.关闭vi的操作界面
Ex模式中的操作
:q 直接关闭VIM编辑器,不保存修改内容;
:q! 直接关闭VIM编辑器(强制退出但不保存修改内容)
:wq 保存已修改的内容并关闭VIM编辑器
:wq! 对于无权更改的文件,强制保存并在保存后强制退出
编辑模式中的操作
ZZ 保存并关闭VIM编辑器
ZQ 不保存修改的内容并退出
三.在VIM编辑模式中,光标的移动方式;
1.逐字符移动:
(1)left arrow 或者 right arrow;(左右箭头)
(2)h:光标向左移动;l:光标向右移动;
2.逐字移动:
w:移动光标至下一个字的字首
e:移动光标至当前字或下一个字的字尾
b:移动光标至前一字的字首
3.行内光标跳转:
0:绝对行首
^:相对行首
$:绝对行尾
4.行间跳转:
(1)up arrow 或者 down arrow;(上下箭头)
(2)j:向下移动一行 k:向上移动一行
(3)#G:直接跳转到第#行行首
(4)G:将光标移动至当前文件的最后一行
(5)gg:直接将光标移动至文档的第一行
EX模式中的光标移动
:#:直接将光标移动至#行行首
:1:直接将光标移动至文档的第一行行首
:$:直接将光标移动至文档的最后一行行首
四.翻页
PAGE UP 或者 PAGE DOWN 实现翻页
^+f:向下翻一页,向前翻一页
^+b:向上翻一页,向后翻一页
^+d:向下翻半页,
^+u:向上翻半页,
五.删除字符
(编辑模式中)
1.逐字符删除:
x:删除光标所在位置的字符
X:删除光标所在位置的左侧的第一个字符
2.删除光标移动过程中经过的所有内容
d:删除光标移动过程中经过的所有内容
dh,dl,dj,dk,d+arrow,dw,de,db,dG,dgg。
dd:删除当前光标所在行
(ex模式中)
:d:删除光标所在行,也相当于 :.d “.”指当前行
:#d:删除第#行
:m,nd:删除从第m行开始到第n行结束中间的所有行。
:m,+nd:删除从第m行开始,及其后面n行的所有内容。
:.,+nd:删除从当前光标所在行开始,及后面n行的内容
:.,$d:删除从当前光标所在行开始,到文档末尾所有内容
注意:在vim的操作中,所有的删除操作,同时意味着剪切。
六.复制命令
编辑模式中
y:复制光标移动过程经过的所有内容
Y、yh,yl,yj,yk……等
yy:复制当前光标所在行
ex模式中
:y:删除光标所在行,也相当于 :.y “.”指当前行
:#y:删除第#行
:m,ny:删除从第m行开始到第n行结束中间的所有行。
:m,+ny:删除从第m行开始,及其后面n行的所有内容。
:.,+ny:删除从当前光标所在行开始,及后面n行的内容
:.,$y:删除从当前光标所在行开始,到文档末尾所有内容
七.粘帖命令
编辑模式中
p(lower):如果是行内的复制或剪切操作,则粘贴时是在光标右侧粘贴,如果是多行的复制或剪切操作,在光标的下方完成粘贴。
P(upper):如果是行内的复制或剪切操作,则粘贴时是在光标左侧粘贴,如果是多行的复制或剪切操作,在光标的上方完成粘贴。
ex模式中
:p:
八.模式切换(面试)
编辑模式(命令模式)被称为VIM编辑器的基础工作模式;所有其他模式之间进行切换的中转站。
1.从编辑模式---->ex模式:
“:”:表示进入ex模式并完成命令的执行
“/”或“?”:开启ex模式中的匹配查找功能(“/”默认是自上而下的查找顺序“?”默认是自下而上)
n和N命令在各个匹配的关键字之间跳转:
n:表示顺序查找
N:表示倒序查找
2.ex模式---->编辑模式
双击ESC键;
Enter键;
Backspace键;
3.编辑模式---->输入模式(插入模式)
i,I,a,A,o,O,s,S,C,cc,
i:在光标所在位置的左侧开始输入;
I:在行首开始输入;
a:在光标所在位置的右侧开始插入;
A:在行尾开始输入;
o:在当前光标所在行的下方插入一个新行;
O:在当前光标所在行的上方插入一个新行;
s:删除光标所在位置的字符,在光标左侧开始输入;
S:删除光标所在行,在行首开始输入;
C:删除光标所在位置直到行尾,并在行尾开始输入;
cc:相当于S命令;
4.输入模式---->编辑模式
ESC键
5.编辑模式---->替换模式
R:进入替换模式
6.替换模式---->编辑模式
ESC键
7.编辑模式---->可视化模式
v:按照字符为单位进行矩形选取;
V:按照行为单位进行矩形选取;
注意:
1.在选取完成之后可以使用d命令进行删除,也可以使用y命令进行复制;
2.只要选取完成,即立即返回编辑模式;
注意:所有的其他模式都只能和编辑模式相互切换,如果两种非编辑模式之间试图切换的话必须经过编辑模式,否则无法完成。
九.替换命令
r:不进入输入模式而替换光标所在位置的字符;
十.撤销命令
U:撤销当前行内的操作;
u:撤销此前的一次编辑操作;
^+r:撤销最后一个被撤销的操作;
十一.重复之前的一次编辑操作
. :重复之前一次的操作
十二.打开多文档编辑
1.直接使用VIM 打开file1,file2,file3,等。
:next:查看或编辑后一个文档
:prev:查看或编辑前一个文档
:first:查看或编辑第一个文档
:last:查看或编辑最后一个文档
2.vim -o |-O file1 file2 file3 ...
-o:水平打开多个窗口
^ + w up arrow 或 down arrow;在多个窗口间切换
-O:垂直打开多个窗口
^ + w left arrow 或 right arrow;在多个窗口间切换
十三.ex模式中的常用命令
1.显示和取消行编号:
:set number (简写为 set nu)
:set nonumber(简写为ser nonu)
2.开启或关闭字符大小写的敏感度:
:set ignorecase(简写为set ic)
:set noignorecase(简写为set noic)
3.开启或关闭自动缩进功能
:set autoindent(简写为 set ai)
:set noautoindent(简写为 set noai)
4.开启或关闭语法着色
:syntax on
:syntax off
5.开启或关闭查找高亮显示
:set hlserch
:set nohlserch(简写为:nohl)
6.另存为
:w /path/to/somewhere
:m,nw /path/to/somewhere(指定的内容另存为)
7.从其他文件直接读取内容并添加到当前文件中
:r /path/from/somefiles
8.调用shell命令(与shell交互)
:!COMMAND
十四.Vimtutor
本文出自 “sherlockholmes” 博客,谢绝转载!
朗科学习期间心得笔记
(一)1.完整的操作系统由内核(kernel)和应用(application)组成。 linux内核版本由主版本号+此版本号+小改动(注:在2.X的版本奇数代表测试版偶数代表稳定版) 可在http://www.kernel.org 此网站内获取内核源代码。内... 查看详情
朗科学习期间心得笔记
VI编辑器:全屏文本编辑器 VI:visualinterface,可视化界面;S.U.N:billjoy,Vim相对于vi有更多的新特性:1.语法着色显示;2.更多的命令;3.历史纪录; Vi:模式化文本编辑器模式:编辑模式(命令模式),默认... 查看详情
朗科实习期间心得笔记
bash多命令执行方法: 1.命令替换 COMMAND1 $(COMMAND2) 2.管道 COMMAND1 | COMMAND2 | COMMAND3 .... 3.顺序执行结构 COMMAND 查看详情
朗科实习期间笔记心得
bash脚本编程case选择分支结构case词in[模式[|模式]...)命令;;]...esac 在脚本中使用的case结构: case$(VAR-NAME)in PATTERN1) COMMAND &n 查看详情
朗科实习期间心得笔记
与用户账户和组账户相关的文件:/etc/passwd/etc/group/etc/shadow/etc/gshadow/etc/default/useradd/etc/login.defs/etc/skel(directory)/etc/passwd:用户名解析库root:x:0:0:root:/root:/bin/bash 1 23 4 &nb 查看详情
朗科实习期间心得笔记
SHELL: 用户与操作系统之间完成交互式操作的一个接口程序,为用户提供简化了的操作。 上世纪70年代中期,Bell实验室,由bourne开发,bourneshell,简称sh; Billjoy:创建Cshell,简称csh;衍生版:tcsh Davidkorn:开发了k... 查看详情
朗科实习期间心得笔记
其他的文本处理命令: wc命令 cut命令 在文件的每一行中提取片断 注意:能够被cut命令修剪的文本文件或数据内容,一般是具有某种特定格式或结构的文本文件或数据内容;如:/etc/passwd  ... 查看详情
朗科实习期间心得笔记
其他的文本处理命令: wc命令 cut命令 在文件的每一行中提取片断 注意:能够被cut命令修剪的文本文件或数据内容,一般是具有某种特定格式或结构的文本文件或数据内容;如:/etc/passwd  ... 查看详情
神经网络学习心得笔记
第5章神经网络学习心得神经元模型神经元(neuron,亦称unit)其实就是一个小型的分类器,其将从其他神经元输入的信息带权重连接进入,然后比较其与阈值的相对大小,并将差异通过激活函数(activati... 查看详情
python高级语法——格式化文件——学习心得笔记
Python高级语法——格式化文件——学习心得笔记前言为了解决不同设备之间的信息交换两个模块xml,json1.xml(EXtensibleMarkupLanguage)XML指可扩展标记语言XML被设计用来传输和存储数据什么是XML?XML指可扩展标记语言(EXtensibleMarkupLanguage... 查看详情
[游戏开发-学习笔记]菜鸟慢慢飞-官方教程学习小心得
自己的事情自己做举例:官方教程《Tankstutorial》中,小坦克:移动,移动的声音,射击,生命值的管理,等Component都挂载在GameObject坦克自己的身上。炮弹,则管理自己的爆炸等。好处不少:~开发维护的时候更加方便~符合“面... 查看详情
python高级语法——协程/迭代器/生成器——学习心得笔记
Python高级语法——协程——学习心得笔记1.迭代器可迭代(Iterable):直接作用于for循环的变量迭代器(Iterator):不但可以用于for循环,还可以被next调用list是典型的可迭代对象,但不是迭代器isinstance判断是否可迭代或者迭代器iter转... 查看详情
卷积神经网络学习笔记与心得数据集
机器学习领域有很多现成的数据集,它们由个人或组织制作、整理,且向外界公开下载,比如在字符识别领域有mnist数据集等,数据挖掘领域有Iris,Adult数据集等。这些数据集为相关技术研究者提供了很大的便捷,有了这些资源... 查看详情
计算机学习心得
计算机学习心得体会 心得一:计算机学习心得体会 21世纪是一个信息经济时代,为适应时代的发展,作为一名当代大学生,所受的社会压力将比任何时候的大学生都要来得沉重,因此在校期间,我们必须尽可能的利... 查看详情
卷积神经网络学习笔记与心得卷积
数字图像是一个二维的离散信号,对数字图像做卷积操作其实就是利用卷积核(卷积模板)在图像上滑动,将图像点上的像素灰度值与对应的卷积核上的数值相乘,然后将所有相乘后的值相加作为卷积核中间像素对应的图像上像... 查看详情
卷积神经网络学习笔记与心得池化
图片经过卷积、激活后的结果一般带有大量原图信息。上图中卷积核提取的是竖直方向上的连续像素,但是,被增强的像素只占了结果的1/3,对于多层网络,其余重要性较低的信息也被传入了下一层网络,造成了不必要的浪费,... 查看详情
c#opencvsharp4学习笔记与心得(winform)(代码片段)
...的基本函数都已经在winform上实现一遍,现在就将我在学习过程中碰到的问题以及想法分享给大家。首先是配置环境:vs2019,.NetFramework4.8,Opencvsharp44.5.5.20211231,直接在Nuget包管理器内下载这几个就行。我的软件界面 ... 查看详情
[机器学习]coursera笔记-supportvectormachines
序言 机器学习栏目记录我在学习MachineLearning过程的一些心得笔记,包括在线课程或Tutorial的学习笔记,论文资料的阅读笔记,算法代码的调试心得,前沿理论的思考等等,针对不同的内容会开设不同的专栏系列。 机器学... 查看详情