Ubuntu上vi(vim)编辑器使用教程
vi(vim)编辑器以及使用gcc使用
export LD_LIBRARY_PATH=库的路径
export LD_LIBRARY_PATH=.
练习:在cal函数中添加除法功能,并封装成动态库,在main.c调用测试
-----------------------------
:set nu //显示行号
:set nonu //不显示行号
-------------------------------
gcc编译器
从.c原程序到最后的可执行的二进制文件
1链接
-E:只做预处理
gcc -E xx.c -o xx.i
-c:只编译不链接,生成.o目标文件
vi(vim)编辑器
vi helloworld.c
打开vi编辑器,默认进入命令模式
命令模式:按"i"切换到插入模式,按":"进入底行命令模式
dd:删除光标所在行
ndd:删除n行
u:恢复上一次操作
ctrl+r:撤销
yy:复制光标所在行
nyy:复制n行
unix/linux内存管理机制
unix/linux采用虚拟内存地址机制。每个进程先天都有4G虚拟内存地址,本质就是整数编号,与物理内存无关。
虚拟地址不可以直接存储数据,否则段错误。
虚拟内存地址必须映射到物理内存才可以存储数据。
程序员所接触的都是虚拟内存地址,虚拟内存地址分为用户地址空间和内核地址空间。用户空间0-3G,内核空间3-4G。
2 使用
2.1 写调用的测试程序main.c
Linux下的vi编辑器的简单使用操作方法
Linux下的vi编辑器的简单使⽤操作⽅法vi编辑器的使⽤:vi编辑器有三种基本⼯作模式,分别是命令⾏模式、⽂本输⼊模式、末⾏模式。
1.命令⾏模式该模式是进⼊vi编辑器后的默认模式,任何时候,不管⽤户处于何种模式,按下esc键即可进⼊命令⾏模式。
在命令⾏模式下,可以输⼊vi命令来管理⾃⼰的⽂档。
此时在键盘上输⼊任何字符都被当作编辑命令,⽽不是输⼊字符。
输⼊的字符并不会在屏幕上显⽰,若是合法的vi命令,则会完成相应的动作,否则会响铃报警。
2.⽂本输⼊模式命令⾏模式下输⼊以下⼏个命令则会进⼊⽂本输⼊模式。
i: 插⼊命令,会将⽂本插⼊到光标所在位置之前I: 插⼊命令,会将⽂本插⼊到光标所在⾏的⾏⾸a: 追加⽂本命令,会将⽂本追加到光标当前位置之后A: 追加⽂本命令,会将⽂本追加到光标所在⾏的末尾o: 空⾏插⼊命令,将在光标所在⾏的下⾯插⼊⼀个空⾏,并将光标置于该⾏的⾏⾸O: 空⾏插⼊命令,将在光标所在⾏的上⾯插⼊⼀个空⾏,并将光标置于该⾏的⾏⾸c: 修改命令r: 取代命令s: 替换命令在该模式下,⽤户输⼊的任何字符都被当做⽂件内容保存起来,并显⽰在屏幕上。
3.末⾏模式命令⾏模式下,⽤户按下:键即可进⼊末⾏模式,此时vi会在显⽰窗⼝的最后⼀⾏显⽰⼀个:作为末⾏模式的说明符,等待⽤户输⼊命令。
多数⽂件管理命令都是在此模式下执⾏的。
末⾏命令执⾏完后,vi会⾃动回到命令⾏模式4.vi⽂本的删除命令:vi编辑器可以在编辑模式和命令⾏模式下删除⽂本。
命令⾏模式下,vi常⽤删除命令x 删除光标处的字符。
若在x之前加上⼀个数字n,则删除从光标所在位置开始向右的n个字符。
X 删除光标前⾯的字符。
若在X之前加上⼀个数字n,则删除从光标前⾯那个字符开始向左的n个字符。
dd 删除光标所在的整⾏。
前⾯加上数字n,则删除当前⾏以及其后的n-1⾏。
D 或 d$ 删除从光标所在处开始到⾏尾的内容。
d( 删除到上⼀句开始的所有字符d) 删除到下⼀句开始的所有字符d{ 删除到上⼀段开始的所有字符d} 删除到下⼀段开始的所有字符d0 删除从光标前⼀个字符开始到⾏⾸的内容dw 删除⼀个单词。
Ubuntuvi命令
Ubuntuvi命令最近在使⽤ubuntu,在linux下,要编辑⽂件或者其他的⽂本⽂件,哪那么⼀个ubuntu linux下的强⼤的⽂本编辑⼯具就不得不提了,那就是VI编辑器。
下⾯把VI常⽤到的命令⾏贴出来。
进⼊vi的命令vi filename :打开或新建⽂件,并将光标置于第⼀⾏⾸vi +n filename :打开⽂件,并将光标置于第n⾏⾸vi + filename :打开⽂件,并将光标置于最后⼀⾏⾸vi +/pattern filename:打开⽂件,并将光标置于第⼀个与pattern匹配的串处vi -r filename :在上次正⽤vi编辑时发⽣系统崩溃,恢复filenamevi filename….filename :打开多个⽂件,依次进⾏编辑移动光标类命令h :光标左移⼀个字符l :光标右移⼀个字符space:光标右移⼀个字符Backspace:光标左移⼀个字符k或Ctrl+p:光标上移⼀⾏j或Ctrl+n :光标下移⼀⾏Enter :光标下移⼀⾏w或W :光标右移⼀个字⾄字⾸b或B :光标左移⼀个字⾄字⾸e或E :光标右移⼀个字⾄字尾) :光标移⾄句尾( :光标移⾄句⾸}:光标移⾄段落开头{:光标移⾄段落结尾nG:光标移⾄第n⾏⾸n+:光标下移n⾏n-:光标上移n⾏n:光标移⾄第n⾏尾H:光标移⾄屏幕顶⾏M:光标移⾄屏幕中间⾏L:光标移⾄屏幕最后⾏0:(注意是数字零)光标移⾄当前⾏⾸:光标移⾄第n⾏尾H:光标移⾄屏幕顶⾏M:光标移⾄屏幕中间⾏L:光标移⾄屏幕最后⾏0:(注意是数字零)光标移⾄当前⾏⾸:光标移⾄当前⾏尾屏幕翻滚类命令Ctrl+u:向⽂件⾸翻半屏Ctrl+d:向⽂件尾翻半屏Ctrl+f:向⽂件尾翻⼀屏Ctrl+b;向⽂件⾸翻⼀屏nz:将第n⾏滚⾄屏幕顶部,不指定n时将当前⾏滚⾄屏幕顶部。
插⼊⽂本类命令i :在光标前I :在当前⾏⾸a:光标后A:在当前⾏尾o:在当前⾏之下新开⼀⾏O:在当前⾏之上新开⼀⾏r:替换当前字符R:替换当前字符及其后的字符,直⾄按ESC键s:从当前光标位置处开始,以输⼊的⽂本替代指定数⽬的字符S:删除指定数⽬的⾏,并以所输⼊⽂本代替之ncw或nCW:修改指定数⽬的字nCC:修改指定数⽬的⾏删除命令ndw或ndW:删除光标处开始及其后的n-1个字do:删⾄⾏⾸d$:删⾄⾏尾ndd:删除当前⾏及其后n-1⾏x或X:删除⼀个字符,x删除光标后的,⽽X删除光标前的Ctrl+u:删除输⼊⽅式下所输⼊的⽂本搜索及替换命令/pattern:从光标开始处向⽂件尾搜索patternpattern:从光标开始处向⽂件⾸搜索patternn:在同⼀⽅向重复上⼀次搜索命令N:在反⽅向上重复上⼀次搜索命令:s/p1/p2/g:将当前⾏中所有p1均⽤p2替代:n1,n2s/p1/p2/g:将第n1⾄n2⾏中所有p1均⽤p2替代:g/p1/s//p2/g:将⽂件中所有p1均⽤p2替换选项设置all:列出所有选项设置情况term:设置终端类型ignorance:在搜索中忽略⼤⼩写list:显⽰制表位(Ctrl+I)和⾏尾标志($)number:显⽰⾏号report:显⽰由⾯向⾏的命令修改过的数⽬terse:显⽰简短的警告信息warn:在转到别的⽂件时若没保存当前⽂件则显⽰NO write信息nomagic:允许在搜索模式中,使⽤前⾯不带“\”的特殊字符nowrapscan:禁⽌vi在搜索到达⽂件两端时,⼜从另⼀端开始mesg:允许vi显⽰其他⽤户⽤write写到⾃⼰终端上的信息最后⾏⽅式命令:n1,n2 co n3:将n1⾏到n2⾏之间的内容拷贝到第n3⾏下:n1,n2 m n3:将n1⾏到n2⾏之间的内容移⾄到第n3⾏下:n1,n2 d :将n1⾏到n2⾏之间的内容删除:w :保存当前⽂件:e filename:打开⽂件filename进⾏编辑:x:保存当前⽂件并退出:q:退出vi:q!:不保存⽂件并退出vi:!command:执⾏shell命令command:n1,n2 w!command:将⽂件中n1⾏⾄n2⾏的内容作为command的输⼊并执⾏之,若不指定n1,n2,则表⽰将整个⽂件内容作为command的输⼊:r!command:将命令command的输出结果放到当前⾏寄存器操作“?nyy:将当前⾏及其下n⾏的内容保存到寄存器?中,其中?为⼀个字母,n为⼀个数字“?nyw:将当前⾏及其下n个字保存到寄存器?中,其中?为⼀个字母,n为⼀个数字“?nyl:将当前⾏及其下n个字符保存到寄存器?中,其中?为⼀个字母,n为⼀个数字“?p:取出寄存器?中的内容并将其放到光标位置处。
viubuntu中vi用法 -回复
viubuntu中vi用法-回复如何在Ubuntu中使用vi编辑器Vi是一种非常强大且广泛使用的文本编辑器,在Linux系统中尤为流行。
Ubuntu是一个基于Linux的操作系统,因此在Ubuntu中使用vi编辑器也非常方便。
在本文中,我将一步一步介绍如何在Ubuntu中使用vi编辑器。
1. 安装vi编辑器在Ubuntu中,默认情况下是已经安装了vi编辑器的。
如果尚未安装,可以通过以下命令安装:sudo apt-get install vim输入上述命令后,系统会提示您输入管理员密码以授权安装程序。
2. 打开终端使用vi编辑器的第一步是打开终端。
在Ubuntu中,可以通过按下“Ctrl+ Alt + T”组合键来打开终端。
您也可以在活动窗口中搜索“终端”并选择打开。
3. 创建或打开一个文件在终端中,可以使用以下命令创建一个新文件:vi filename其中“filename”是您要创建的文件的名称。
如果文件已存在,vi将会打开它并加载内容。
4. 切换到编辑模式默认情况下,vi处于命令模式。
在该模式下,您不能直接输入或编辑文本。
要切换到编辑模式,只需按下“i”键,这将使光标变成下划线,并允许您进行文本编辑。
5. 编辑文本在编辑模式中,您可以自由编辑文本内容。
您可以使用光标键移动光标,使用键盘输入文本。
您还可以使用退格键删除文本,使用回车键换行。
6. 退出编辑模式当您完成对文本的编辑后,可以按下“esc”键以退出编辑模式。
一旦退出编辑模式,您将回到命令模式。
7. 保存文件在命令模式下,可以使用以下命令保存文件::w输入上述命令后,系统会将您的更改保存到文件中。
如果要将更改保存到另一个文件中,可以使用以下命令(将“newfilename”替换为您的新文件名)::w newfilename8. 退出vi编辑器如果您已经保存了文件中的更改并想要退出vi编辑器,可以使用以下命令::q输入上述命令后,vi编辑器将立即关闭。
Ubuntu中vi如何使用方向键,回车键的配置参数
ubuntu上使用vi是方向键变乱码退格键不能使用的解决办法首先要用sudo apt-get install vimubuntu下使用vi是方向键变乱码退格键不能使用的解决方法今晚上课,老师给我们每人分配了一台ubuntu虚拟机,说要做实验用。
我当然是没关系,我最喜欢的就是ubuntu了,但是对于一些对linux不熟悉的同学来说,也许是个很艰难的实验过程了。
老师要我们在ubuntu下编辑一些文件,这就涉及到了vi这个编辑器了。
在ubuntu下,初始使用vi的时候有点问题,就是在编辑模式下使用方向键的时候,并不会使光标移动,而是在命令行中出现[A [B [C [D之类的字母,而且编辑错误的话,就连平时关于的退格键(B ackspace键)都使用不了,只能用Delete来删除。
针对这个问题,网上的答案有很多,例如是安装完整版的vim啊,编辑/etc/vim/vimrc.tiny等方法,很杂很乱,在这里我就做个详细的总结吧:一、编辑/etc/vim/vimrc.tiny由于/etc/vim/vimrc.tiny的拥有者是root用户,所以要在root的权限下对这个文件进行修改。
很简单,这个文件里面的倒数第二句话是“set compatible”,如下所示:将“compatible”改成“nocompatible”非兼容模式就可以解决方向键变ABCD的问题了。
接下来要解决Backspace键的问题也很简单,在刚才那句话后面再加一句:变成下图所示:就可以解决问题了。
这个时候,无论对于哪个用户,使用vi都能很方便的按照我们的习惯去编辑文件了。
二、安装vim full版本由于ubuntu预安装的是tiny版本,所以会导致我们在使用上的产生上述的不便。
但是,我们安装了vim的full版本之后,键盘的所有键在vi下就很正常了。
首先,要先卸掉旧版的vi,输入以下命令:然后安装full版的vim,输入命令:这样安装好了之后,我们在编辑文件的时候依然是使用“vi”命令来启动新装的vim,但是操作起来比tiny更加方便了。
vim编辑器的使用
vim编辑器的使⽤这⾥主要介绍vim编辑器的⼀些常⽤命令和⽅法,主要包括: vim编辑器的基本使⽤,包括vi的启动与退出、⼯作模式的切换、光标的移动、屏幕的滚动、⽂本的插⼊与删除、复制与粘帖、查找与替换等。
vim编辑器之程序编辑,包括程序设计中光标的跳转、关键字的补全,以及代码的缩进等。
希望通过本节的学习,能够基本掌握vi编辑器的使⽤⽅法和相关技巧,能够独⽴完成程序源代码的编辑和修改。
1、 vim编辑器的基本使⽤ vim编辑器是Linux系统下的标准编辑器。
虽然命令繁多复杂,并且绝⼤多数功能的输⼊都依靠键盘来完成,但如果我们熟悉掌握之后就会发现vim编辑器的功能、效率等都是其他图形界⾯编辑器⽆法⽐拟的,下⾯让我们来揭开它的神秘⾯纱。
1.1、 vim的启动 在终端输⼊命令vim,后⾯接着输⼊想要创建或编辑的⽂件名,即可进⼊vim编辑器。
$ vim test.c 如果vi命令后⾯所输⼊的⽂件不存在,则系统会⾃动创建⼀个以该字符串命名的⽂本⽂件。
如上图,光标停留在左上⽅,由于新建⽂件中没有任何内容,所以每⼀⾏的开头都为波浪线。
窗⼝的底部为状态栏,显⽰当前编辑⽂件的相关信息。
打开⽂件后,光标停留在屏幕左上⽅。
状态栏显⽰了当前编辑⽂件的⽂件名、⾏数以及字符数等信息。
vi命令打开⽂件时还可以带参数,这些参数⽤于修正vi的打开⽅式,主要包括如下:-R :以只读⽅式打开⽂件。
如果只需阅读⽂件内容⽽不想对其进⾏修改时,可以使⽤这个参数,以防对⽂件的误操作,-x:该参数可以在保存⽂件时对其进⾏加密,以后每次打开都需要输⼊密钥,否则将出现乱码。
1.2 、vim的⼯作模式 vim有3种⼯作模式:普通模式、编辑模式和命令模式,这3种模式之间可以相互切换。
(1)、普通模式 由Shell进⼊vim编辑器时,⾸先进⼊普通模式。
在普通模式下,从键盘输⼊任何字符都被当作命令来解释。
普通模式下没有任何提⽰符,当输⼊命令时⽴即执⾏,不需要回车,⽽且输⼊的字符不会在屏幕上显⽰出来。
ViVim基本用法
ViVim基本⽤法Vi/Vim是Linux中⼀款功能强⼤的编辑器,vi是Visual Interface的缩写,即可视化接⼝,vim是vi iMprove的缩写,即 vi的增强版(具有语法着⾊功能)。
它在Linux上的地位就仿佛Edit程序在DOS上⼀样。
它可以执⾏输出、删除、查找、替换、块操作等众多⽂本操作,⽽且⽤户可以根据⾃⼰的需要对其进⾏定制。
Vi不是⼀个排版程序,它不像Word或WPS那样可以对字体、格式、段落等其他属性进⾏编排,它只是⼀个⽂本编辑程序。
vi没有菜单,只有命令,且命令繁多。
1.Vim配置⽂件全局vim配置⽂件:/etc/vimrc个⼈vim配置⽂件:~/.vimrc当我们需要设置Vim的部分功能时,我们可以通过修改配置⽂件来实现!例如:永久添加⾏号--------->在配置⽂件中加上set nu2.Vim三级模式及相互切换 三种模式 命令模式(默认):刚进⼊vim的时候,默认就是命令模式,可以复制⾏,删除⾏等。
输⼊模式:可以输⼊内容。
末⾏模式:在最下边,除编辑模式,可以输⼊诸多管理员命令命令⾏模式 任何时候,不管⽤户处于何种模式,只要按⼀下ESC键,即可使Vi进⼊命令模式;我们在shell环境(提⽰符为$)下输⼊启动Vi命令,进⼊编辑器时,也是处于该模式下。
在该模式下,⽤户可以输⼊各种合法的Vi命令,⽤于管理⾃⼰的⽂档。
此时从键盘上输⼊的任何字符都被当做编辑命令来解释,若输⼊的字符是合法的Vi命令,则Vi在接受⽤户命令之后完成相应的动作。
但需注意的是,所输⼊的命令并不在屏幕上显⽰出来。
若输⼊的字符不是Vi的合法命令,Vi会响铃报警。
⽂本输⼊模式 在命令模式下输⼊插⼊命令i、附加命令a 、打开命令o、修改命令c、取代命令r或替换命令s都可以进⼊⽂本输⼊模式。
在该模式下,⽤户输⼊的任何字符都被Vi当做⽂件内容保存起来,并将其显⽰在屏幕上。
在⽂本输⼊过程中,若想回到命令模式下,按键ESC即可。
VIM编辑器操作详解
VIM编辑器操作详解1 vim 使⽤介绍1.1 vim 安装# CentOS 安装:yum install -y vim# Ubuntu 安装:sudu apt-get install vim安装完成后,可使⽤ vim -v 查看版本号1.2 vim 命令格式vim [OPTION]... FILE...常⽤选项选项说明+n打开⽂件后,直接让光标处于第 n ⾏的⾏⾸;+默认⾏尾 ;vim + filename 末⾏⾏⾸+/PATTERN打开⽂件后,直接让光标处于第⼀个被PATTERN匹配到的⾏的⾏⾸;vim +/for filename ⽂件第⼀个for所在⾏的⾏⾸-b file⼆进制⽅式打开⽂件-d file1 file2...⽐较多个⽂件,相当于 vimdiff-m file只读打开⽂件-e file直接进⼊ ex 模式,相当于执⾏ ex file-y file Easy mode (like "evim", modeless),直接可以操作⽂件,`ctrl+o:wq说明:如果该⽂件存在,⽂件被打开并显⽰内容如果该⽂件不存在,当编辑后第⼀次存盘时创建它1.3 vim:模式化编辑器vim 是⼀个模式编辑器,击键⾏为是依赖于 vim的的“模式”三种常见模式:命令或普通(Normal)模式:默认模式,可以实现移动光标,剪切/粘贴⽂本插⼊(Insert)或编辑模式:⽤于修改⽂本扩展命令(extended command)或命令(末)⾏模式:保存,退出等模式转换命令模式 --> 插⼊模式命令解释i insert在光标所在处输⼊I在当前光标所在⾏的⾏⾸输⼊a append在光标所在处后⾯输⼊A在当前光标所在⾏的⾏尾输⼊o在当前光标所在⾏的下⽅打开⼀个新⾏O在当前光标所在⾏的上⽅打开⼀个新⾏插⼊模式 --- ESC-----> 命令模式命令模式 ---- : ----> 扩展命令模式扩展命令模式 ----ESC,enter----> 命令模式⽰例:插⼊颜⾊字符1 切换⾄插⼊模式2 按ctrl+v+[ 三个键,显⽰^[3 后续输⼊颜⾊信息,如:^[[32mhello^[[0m4 切换⾄扩展命令模式,保存退出5 cat ⽂件可以看到下⾯显⽰1.4 扩展命令模式按“:”进⼊Ex模式,创建⼀个命令提⽰符: 处于底部的屏幕左侧1.4.1 扩展命令模式基本命令命令解释w写(存)磁盘⽂件wq写⼊并退出x写⼊并退出X加密q退出q!不存盘退出,及时更改都将丢失r filename读⽂件内容到当前⽂件中w filename将当前⽂件内容写⼊另⼀个⽂件!command执⾏命令r!command读⼊命令的输出1.4.2 地址定界格式:start_pos,end_pos CMD1.4.2.1 地址定界格式命令解释| 表⽰特定的第#⾏,例如5即表⽰第5⾏,# | 指定⾏范围,从左侧 # 表⽰起始⾏,到右侧 # 表⽰结尾⾏,+# | 指定⾏范围,左侧为起始⾏绝对编号,右侧为相对左侧⾏号的偏移量,例如:3,+7,意思是从第3⾏开始,再向后加7⾏. | 表⽰当前⾏;如 :.,$y 表⽰复制从当前⾏开始到最后⼀⾏$ | 最后⼀⾏.,$-1 | 当前⾏到倒数第⼆⾏% | 表⽰全⽂, 相当于1,$/pattern/ | 从光标所在处起始向⽂件尾部,第⼀次被模式所匹配到的⾏,例,/first/,$ 表⽰从第⼀次能被first匹配的⾏开始到最后⼀⾏结束/pat1/,/pat2/ | 从光标所在处起始,第⼀次由 pat1 匹配到的⾏开始,⾄第⼀次由 pat2 匹配到的⾏结束之间的所有⾏,/pat/ | 从指定⾏开始,⼀直找到第⼀个匹配 pattern 的⾏结束/pat/,$ | 向下找到第⼀个匹配 patttern 的⾏到整个⽂件的结尾的所有⾏1.4.2.2 地址定界后跟⼀个编辑命令命令解释d删除y复制w file将范围内的⾏另存⾄指定⽂件中r file在指定位置插⼊指定⽂件中的所有内容可同编辑命令⼀同使⽤,实现编辑操作:d,y,c,w /path/to/somefile(将范围内的⽂本保存⾄指定的⽂件中)合并两个⽂件vim /etc/fstab:5r /tmp/test.txt将⽂件/tmp/test.txt写⼊到⽂件/etc/fstab第5⾏后⾯1.4.3 查找并替换格式s/要查找的内容/替换为的内容/修饰符说明要查找的内容:可使⽤基末正则表达式模式替换为的内容:不能使⽤正则表达式,如果“要查找的内容”部分在模式中使⽤分组符号,在“替换的内容”中使⽤后可以使⽤\1, \2, ...等后向引⽤符号;还可以使⽤“&”引⽤前⾯查找时查找到的整个内容直接引⽤查找模式匹配到的全部⽂本修饰符命令说明i查找时忽略⼤⼩写g全局替换,意味着⼀⾏中如果匹配多次,则均替换,默认情况下,每⼀⾏只替换第⼀次出现gc全局替换,每次替换前询问⽰例# 将⽂本中所有的this替换为This:%s/this/This/gi# 将⽂本中1到20⾏的this替换为This:1,20s/this/This/gi# 将⽂本中所有的t替换为T,还要保持t后⾯的字符不变:%s@\<t\([[:alpha:]]\+\)\>@T\1@g# 将⽂本中所有的t开头的,后⾯加上er:%s@\<t[[:alpha:]]\+\>@&er@g# 将⽂件中所有的enable=0替换为enable=1,将所有的gpgcheck=0替换为gpgcheck=1:%s@\(enable\|gpgcheck\)=0@\1=1@g查找替换中的分隔符/可替换为其它字符,如:#,@⽰例s@/etc@/var@gs#/boot#/#i1.4.4 定制 vim 的⼯作特性每个⼈都有⾃⼰喜欢的配置,⽐如背景颜⾊,空格缩进⼤⼩等,vim 提供配置⽂件供使⽤者保存⾃⼰的偏好,下⾯经常使⽤的配置⽂件:编辑:前登录⽤户的宿主⽬录下,⽐如root ⽤户就是/root/,⽂件为.vimrc注意:在末⾏模式下的设定,仅对当前vim进程有效扩展命令模式的配置只是对当前vim进程有效,可将配置存放在⽂件中持久保存配置⽂件/etc/vimrc # 全局~/.vimrc # ⽤户个⼈,可能需要创建命令说明⾏号显⽰set number,简写set nu⾏号取消显⽰set nomber,简写set nonu忽略字符⼤⼩写启⽤set ignorecase,简写 set ic忽略字符⼤⼩写禁⽤set noic括号匹配⾼亮匹配set showmatch,简称为set sm括号匹配⾼亮取消set noshowmatch,简称为set nosm⾃动缩进启⽤set autoindent,简写 set ai ⾃动缩进取消set noai复制保留格式启⽤set paste复制保留格式禁⽤set nopaste显⽰ Tab ^I 和换⾏符和 $ 显⽰set list取消 Tab ^I 和换⾏符和 $ 显⽰set nolist⾼亮搜索启⽤set hlsearch⾼亮搜索取消set nohlsearch 简写:nohl 语法⾼亮启⽤syntax on语法⾼亮取消syntax off⽂件格式启⽤windows格式:set fileformat=dos 启⽤unix格式:set fileformat=unix简写 set ff=dosTab ⽤空格代替启⽤set expandtab 默认为8个空格代替Tab Tab ⽤空格代替禁⽤set noexpandtab,简写:set etTab⽤指定空格的个数代替启⽤:set tabstop=# 指定#个空格代替Tab简写:set ts=4设置⽂本宽度set textwidth=65 (vim only) #从左向右计数set wrapmargin=15 #从右到左计数设置光标所在⾏的标识线启⽤set cursorline,简写 set cul设置光标所在⾏的标识线禁⽤set nocursorline加密启⽤set key=password机密禁⽤set key=命令说明了解更多set 帮助:help option-list:set or :set all⽰例cat ~/.vimrcset nu # ⾏号set sm # 括号匹配⾼亮set ai # ⾃动缩进set hlsearch # ⾼亮搜索syntax on # 语法⾼亮set colorscheme default # 设置颜⾊主题set nocompatible # vi 和 vim 兼容set noerorbells # 错误铃声set showmatch # 括号匹配查找set ignorecase # 查找忽略⼤⼩写set incsearch # 搜索时⾃动跳转光标set tabstop=4 # 空格set guifont=Menlo:h10 # 字体set autowrite # ⾃动存盘set history=3000set colorcolumn=821.5 命令模式命令模式,⼜称为Normal模式,功能强⼤,只是此模式输⼊指令并在屏幕上显⽰,所以需要记忆⼤量的快捷按键才能更好的使⽤1.5.1 退出 vim命令说明ZZ保存退出ZQ不保存退出1.5.2 光标跳转字符间跳转(Ncommand 跳转由 N 指定的个数的字符)命令说明h左命令说明l右j下k上单词间跳转(Ncommand 由 N 指定⼀次跳转的单词数)命令说明w下⼀个单词的词⾸e当前或下⼀个单词的词尾b当前或前⼀个单词的词⾸当前页跳转命令说明H页⾸M页中间⾏L页底zt将光标所在当前⾏移到屏幕顶端zz将光标所在当前⾏移到屏幕中间zb将光标所在当前⾏移到屏幕底端⾏⾸⾏尾跳转命令说明^跳转⾄⾏⾸的第⼀个⾮空⽩字符0跳转⾄⾏⾸$跳转⾄⾏尾⾏间跳转命令说明G | 跳转⾄由 # 号指定的⾏:# | 跳转⾄由第 # ⾏1G 和 gg | 跳转⾄第⼀⾏G | 跳转⾄最后⼀⾏句间跳转命令说明)跳转到下⼀句(跳转到上⼀句段落间跳转命令说明}下⼀段{上⼀段命令模式翻屏操作命令说明Ctrl+f向⽂件尾部翻⼀屏,相当于 PagedownCtrl+b向⽂件⾸部翻⼀屏,相当于 PageupCtrl+d向⽂件尾部翻半屏Ctrl+u向⽂件⾸部翻半屏Enter按⾏向后翻1.5.3 字符编辑命令说明x删除光标所在处的字符命令说明x | 删除光标所在处起始的 # 个字符xp | 交换光标所在处的字符与其后⾯的字符的位置,如serach,将光标放在r上,按xp,可以换成search | 转换⼤⼩写J | 删除当前⾏后的换⾏符1.5.4 替换命令(replace)命令说明r替换光标所在处的字符,如:将⼩写n替换为⼤写N,命令为 r 后⾯跟上NR切换成 REPLACE 模式(在末⾏出现-- REPLACE -- 提⽰),按 ESC 回到命令模式1.5.5 删除命令(delete)命令说明d删除命令,可结合光标跳转字符,实现范围删除d$删除当前字符⾄⾏尾的字符d^删除当前字符⾄⾮空⾏⾸的字符d0删除当前字符⾄⾏⾸的字符dwdw | 删除 # 个单词de |db |dd | 删除光标所在处的⾏,也⽀持加数字,如3dd是删除光标所在处的⾏起始的共3⾏dd | 多⾏删除D | 从当前光标位置⼀直删除到⾏尾,等同于d$1.5.6 粘贴命令(paste)命令说明p缓冲区中的内容如果为整⾏,则粘贴在当前光标所在⾏的下⽅,否则,则粘贴⾄当前光标所在处的后⽅P缓冲区中的内容如果为整⾏,则粘贴在当前光标所在⾏的上⽅,否则,则粘贴⾄当前光标所在处的前⽅1.5.7 复制命令(yank)命令说明y复制,⼯作⾏为相似于d命令y$y0y^yeywybyy复制⼀整⾏yy | 复制#⾏Y | 复制整⾏1.5.8 改变命令(change)从编辑模式-->输⼊模式,实际实现删除操作命令说明c$c^c0cbcecwcw |cc | 删除光标所在的⾏,并转换为输出模式,即删除当前⾏并输⼊新内容,相当于S cc | 删除#⾏C | 删除当前光标到⾏尾,并切换成插⼊模式,相当于c$1.5.9 查找命令说明/PATTERN从当前光标所在处向⽂件尾部查找能够被当前模式匹配到的所有字符串PATTERN 从当前光标所在处向⽂件⾸部查找能够被当前模式匹配到的所有字符串n 下⼀个,与命令⽅向相同N 上⼀个,与命令⽅向相反1.5.10 撤销(undo)操作命令说明u撤销最近的更改,相当于windows中ctrl+zu | 撤销此前的 # 个操作U | 撤消光标落在这⾏后所有此⾏的更改Ctrl+r | 撤销此前的撤销,相当于windows中crtl+y. | 重复执⾏前⼀个编辑操作. | 重复执⾏前 # 个编辑操作1.5.11 ⾼级⽤法<start position><command><end position>常见Command:y 复制、d 删除、gU 变⼤写、gu 变⼩写⽰例0y$ 命令0 →先到⾏头y →从这⾥开始拷贝$ →拷贝到本⾏最后⼀个字符⽰例:粘贴 song 100 次100isong [ESC]命令说明di"光标在” “之间,则删除” “之间的内容yi(光标在()之间,则复制()之间的内容vi[光标在[]之间,则选中[]之间的内容dtx删除字符直到遇见光标之后的第⼀个 x 字符ytx复制字符直到遇见光标之后的第⼀个 x 字符1.6 可视化模式在末⾏有”-- VISUAL -- “指⽰,表⽰在可视化模式允许选择的⽂本块命令说明v按字符选定,⾯向字符,-- VISUAL --V按⾏选定,⾯向整⾏,-- VISUAL LINE --ctrl-v⾯向块,-- VISUAL BLOCK --可视化键可⽤于与移动键结合使⽤w ) } 箭头等突出显⽰的⽂字可被删除,复制,变更,过滤,搜索,替换等⽰例:在⽂件指定⾏的⾏⾸插⼊#1、先将光标移动到指定的第⼀⾏的⾏⾸2、输⼊ctrl+v 进⼊可视化模式3、向下移动光标,选中希望操作的每⼀⾏的第⼀个字符4、输⼊⼤写字母 I 切换⾄插⼊模式5、输⼊ #6、按 ESC 键⽰例:在指定的块位置插⼊相同的内容1、光标定位到要操作的地⽅2、CTRL+v 进⼊“可视块”模式,选取这⼀列操作多少⾏3、SHIFT+i(I)4、输⼊要插⼊的内容5、按 ESC 键1.7 多⽂件模式命令说明:next下⼀个:prev上⼀个:first第⼀个:last最后⼀个:wall保存所有:qall不保存退出所有:wqall保存所有⽂件并退出例:vim file1 file2 file3在file1中 :next 切换到file2在file1中 :last 切换到file3在file3中 :prev 切换到file2在file3中 :first 切换到file1注:file1 和 file2 和 file3可以实现跨⽂件复制1.8 多窗⼝模式1.8.1 多⽂件分割命令说明-o⽔平或上下分割窗⼝-O垂直或左右分割窗⼝(vim only)⽰例vim -o|-O FILE1 FILE2 ...在窗⼝间切换,Ctrl+w <h|j|k|l>注意:单个⽂件也可以分割为多个窗⼝进⾏查看1.8.2 单⽂件窗⼝分割命令说明Ctrl+w,s split, ⽔平分割,上下分屏命令说明Ctrl+w,v vertical, 垂直分割,左右分屏ctrl+w,q取消相邻窗⼝ctrl+w,o取消全部窗⼝:wqall退出1.9 vim的寄存器有26个命名寄存器和1个⽆命名寄存器,常存放不同的剪贴版内容,可以在同⼀个主机的不同会话(终端窗⼝)间共享寄存器名称 a,b,...,z,格式: 寄存器放在数字和命令之间⽰例3"tyy 表⽰复制3⾏到t寄存器中,末⾏显⽰`3 lines yanked into "t`"tp 表⽰将t寄存器内容粘贴未指定,将使⽤⽆命名寄存器有10个数字寄存器,⽤0,1,...,9表⽰,0存放最近复制内容,1存放最近删除内容。
linux实验报告二-vi编辑器的使用
linux实验报告二-vi编辑器的使用
实验名称:vi编辑器的使用
实验目的:掌握vi编辑器的基本用法,以及文件的保存和退出。
实验环境:ubuntu 16.04
实验内容:
1.进入vi编辑器
打开终端,输入vi命令进入vi编辑器。
例如:vi text.txt (text.txt是要编辑的文件名,如果文件不存在,会自动创建
一个新文件并打开)。
2.编辑文本
vi编辑器默认进入命令行模式,只能执行命令,不能编辑文本。
需要进入编辑模式才能输入文本。
在命令行模式下,按下i或a键即可进入插入模式。
其中i表
示插入光标左边,a表示插入光标右边。
在插入模式下,可以输入文本,也可以使用退格键、删除键、方向键等。
3.保存并退出
完成文本编辑后,需要保存并退出。
首先按下ESC键回到命令行模式,然后输入:wq保存并退出。
如果只是想退出而不保存,可以输入:q!强制退出。
实验心得:
vi编辑器是一种非常强大的文本编辑器,虽然刚开始使用时有些不习惯,但是通过不断的练习和操作,会慢慢地掌握其基本用法。
同时在使用vi编辑器时,一定要特别小心,避免误操作,否则会对文件造成不可逆的损坏。
Ubuntu系统的VI编辑器基本操作
vi编写器的基本操作1.vi 编写器的工作模式1)一般模式启动 vi 编写器后,就处于一般模式。
在一般模式下,任何字符都视为指令,能够进行的基本操作有:删除整行(或单个字符)、复制、粘贴,还能够使用光标键挪动光标。
2)编写(插入、写入)模式在一般模式下按下i,o,a,r 等字母后就进入编写模式。
在编写模式下按下ESC键就进入一般模式。
3)命令行模式在一般模式中输入“:或 / 或?”就进入了命令行模式。
在命令行模式下按下 ESC键就进入一般模式。
2.vi 编写器的启动与退出1)进入 vi 编写器zgj@Ubuntu:~$vi test2)按 i 进入编写模式,编写文字3)按 ESC键返回一般模式3.一般模式下的基本操作1)挪动光标1 / 3使用光标键、 home,end,pgup,pgdn 挪动光标操作。
2)删除字符DEL(或 x):删除光标后边的字符X:删除光标前方的字符dd:删除一行字符3)复制与粘贴yy:复制光标所在的一行字符p:粘贴到光标下一行P:粘贴到光标上一行4)撤消与重做u:撤消前一个操作ctrl+r :重做前一个操作2 / 34.在命令行模式下输入:w 保留文件,不退出:w file 另存到file 中,不退出:r file 读入 file 的内容,显示输出到目前光标的下一行 :wq 保留文件,退出 :q 不保留文件,退出 :q!不保留文件,强迫退出(假如改正了文件,又不想保留,使用该命令)3 / 3。
ubuntu_vim配置文档
1. Vim (很强的编辑器)安装: 可以直接在应用程序/ubuntu软件中心/vim 然后点击GVim 安装;安装完成后,Vim 主要配置文件(vimrc)可以在usr/share/vim 中查看到,并且所有用户共享的配置文件,当然属于自己用户的配置可以在/home/{your_user} 下建立一个.vim 的隐藏文件夹,然后把自己需要配置文件与插件放进去。
提供一份现在使用的配置 vimrc:" All system-w ide defaults are set in $VIMRUNTIME/debian.vim (usually just" /usr/share/vim/vimcurrent/debian.vim) and sourced by the call to :runtime" you can find below. If you wish to change any of those settings, you should" do it in this file (/etc/vim/vimrc), since debian.vim w ill be overwritten" everytrime an upgrade of the vim packages is performed. It is recommended to" make changes after sourcing debian.vim since it alters the value of the" 'compatible' option." This line should not be removed as it ensures that various options are" properl y set to work with the Vim-related packages available in Debian.runtime! debian.vim" Uncomment the next line to make Vim more Vi-compatible" NOTE: debian.vim sets 'nocompatible'. Setting 'compatible' changes numerous" options, so any other options should be set AFTER setting 'compatible'."set compatible" Vim5 and later versions support syntax highlighting. Uncommenting the" following enables syntax highlighting by default.if has("syntax")syntax onendif" If using a dark background w ithin the editing area and syntax highlighting" turn on this option as w ell"set background=dark" Uncomment the follow ing to have Vim jump to the last position w hen" reopening a file"if has("autocmd")" au BufReadP ost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif"endif" Uncomment the follow ing to have Vim load indentation rules and plugins" according to the detected filetype."if has("autocmd")" filetype plugin indent on"endif" The follow ing are commented out as they cause vim to behave a lot" differently from regular Vi. They are highly recommended though."set showcmd " Show (partial) command in status line."set show match " Show matching brackets."set ignorecase " Do case insensitive matching"set smartcase " Do smart case matching"set incsearch " Incremental search"set auto write " Automatically save before commands like :next and :make "set hidden " Hide buffers when they are abandoned"set mouse=a " E nable mouse usage (all modes)" Source a global configuration file if availableif filereadable("/etc/vim/vimrc.local")source /etc/vim/vimrc.localendifcolor slateset enc=utf-8set fencs=utf-8,ucs-bom,shift-jis,gb18030,gbk,gb2312,cp936set langmenu=zh_CN.UTF-8language message zh_CN.UTF-8set helplang=cnset aiset nuset ruset expandtabset tabstop=2set shift w idth=2set guioptions-=mset guioptions-=Tset ignorecase "搜索不区分大小写set foldopen=allset hlsearch "高亮显示搜索"设置工作目录为当前编辑文件的目录set bsdir=bufferset autochdir#设置.thor文件与ruby文件显示同样高亮au BufNew File,BufRead *.thor set filetype=ruby:inoremap ( ()<E SC>i:inoremap { { }<E SC>i<LEFT>:inoremap [ []<E SC>i:inoremap " ""<E SC>i:inoremap ' ''<E SC>i:inoremap < <><ESC>isource $VIMRUNTIME/msw in.vim "加载Windows快捷键映射behave mswin/* 直接把上面内容复制到vimrc 文件中就可以*/现在就可以enjoy your vim 了~~。
ubuntu_vi编辑器使用
ubuntu下文本编辑器VI[转]文件编辑器vi作者:北南南北来自:摘要:vi 编辑器是最常用的文档创建和编辑工具,初学者应该学会简单应用vi ,学会在vi 中做简单的修改、删除、插入、搜索及替换作业;如果您是新手,不妨看看本文,或许这篇文档能让您在最短的时间内学会vi的简单操作;目录1、关于文本编辑器;2、vi 编辑器;3、vi 编辑器的使用方法;3.1 如何调用vi ;3.2 vi 的三种命令模式;3.3 文件的保存和退出;3.4 光标移动;3.5 插入模式(文本的插入);3.6 文本内容的删除操作;3.7 恢复修改及恢复删除操作;3.8 可视模式;3.9 复制和粘帖的操作;3.10 关于行号;3.11 查找和替换功能;3.11.1 查找;3.11.2 替换;4、关于本文;5、后记;6、参考文档;7、相关文档;+++++++++++++++++++++++++++++++++++++正文+++++++++++++++++++++++++++++++++++++1、关于文本编辑器;文本编辑器有很多,比如图形模式的gedit、kwrite、OpenOffice ... ... ,文本模式下的编辑器有vi、vim(vi的增强版本)和nano ... ... vi和vim是我们在Linux中最常用的编辑器。
我们有必要介绍一下vi(vim)最简单的用法,以让Linux入门级用户在最短的时间内学会使用它。
nano 工具和DOS操作系统下的edit操作相似,使用简单,我们不作介绍了,如果您有兴趣,不妨尝试一下;2、vi编辑器;为什么要学会简单应用vivi或vim是Linux最基本的文本编辑工具,vi或vim虽然没有图形界面编辑器那样点鼠标的简单操作,但vi编辑器在系统管理、服务器管理中,永远不是图形界面的编辑器能比的。
当您没有安装X-windows桌面环境或桌面环境崩溃时,我们仍需要字符模式下的编辑器vi;vi或vim 编辑器在创建和编辑简单文档最高效的工具;3、vi编辑器的使用方法;3.1如何调用vi;[root@localhost ~]# vi filename~~~~~~~~3.2 vi的三种命令模式;Command(命令)模式,用于输入命令;Insert(插入)模式,用于插入文本;Visual(可视)模式,用于视化的的高亮并选定正文;3.3文件的保存和退出;Command 模式是vi或vim的默认模式,如果我们处于其它命令模式时,要通过ESC键切换过来。
vi使用方法
vi使用方法Vi使用方法。
Vi是一款常用的文本编辑器,它具有强大的功能和灵活的操作方式,可以帮助用户高效地进行文本编辑。
下面将介绍Vi的基本使用方法,希望对初学者有所帮助。
1. 启动Vi。
在命令行中输入vi命令即可启动Vi编辑器,如,vi filename。
如果文件不存在,则会新建一个文件;如果文件已存在,则会打开该文件。
2. Vi的三种模式。
Vi有三种模式,命令模式、插入模式和底线命令模式。
命令模式,Vi启动后默认进入的模式,可以进行文本的复制、粘贴、删除等操作。
插入模式,在命令模式下按下i、a、o等键可以进入插入模式,可以进行文本的输入和编辑。
底线命令模式,在命令模式下按下冒号键“:”可以进入底线命令模式,可以保存、退出、查找等操作。
3. 基本操作。
在命令模式下,可以使用以下基本操作:光标移动,h(左)、j(下)、k(上)、l(右)。
删除字符,x(删除光标所在位置的字符)、dd(删除整行)。
复制粘贴,yy(复制整行)、p(粘贴)。
撤销操作,u(撤销上一步操作)。
4. 插入文本。
在命令模式下按下i可以进入插入模式,在插入模式下可以进行文本的输入和编辑。
按下Esc键可以退出插入模式,回到命令模式。
5. 保存和退出。
在命令模式下按下冒号键“:”进入底线命令模式,可以进行保存和退出操作:保存,输入w命令,如,w filename。
保存并退出,输入wq命令,如,wq filename。
不保存并退出,输入q!命令,如,q!。
6. 查找和替换。
在底线命令模式下可以进行查找和替换操作:查找,输入/加上要查找的内容,如,/keyword。
替换,输入:s/old/new/g可以替换文本中的所有old为new。
7. 多窗口操作。
Vi支持分割窗口进行多文件编辑,可以使用,sp(水平分割)、vsp(垂直分割)命令进行窗口分割,使用Ctrl+w进行窗口切换。
8. 高级操作。
Vi还支持宏录制、行号显示、标签跳转等高级操作,可以根据实际需求进行学习和使用。
虚拟机编辑器vi使用方法详细介绍
虚拟机编辑器vi使⽤⽅法详细介绍vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强⼤不逊⾊于任何最新的⽂本编辑器,这⾥只是简单地介绍⼀下它的⽤法和⼀⼩部分指令。
由于对Unix及Linux系统的任何版本,vi编辑器是完全相同的,因此您可以在其他任何介绍vi的地⽅进⼀步了解它。
Vi也是Linux中最基本的⽂本编辑器,学会它后,您将在Linux的世界⾥畅⾏⽆阻。
基本上vi可以分为三种状态,分别是命令模式(command mode)、插⼊模式(Insert mode)和底⾏模式(last line mode),各模式的功能区分如下:1) 命令⾏模式command mode) 控制屏幕光标的移动,字符、字或⾏的删除,移动复制某区段及进⼊Insert mode下,或者到 last line mode。
2) 插⼊模式(Insert mode) 只有在Insert mode下,才可以做⽂字输⼊,按「ESC」键可回到命令⾏模式。
3) 底⾏模式(last line mode) 将⽂件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出⾏号……等。
不过⼀般我们在使⽤时把vi简化成两个模式,就是将底⾏模式(last line mode)也算⼊命令⾏模式command mode)。
在系统提⽰符号输⼊vi及⽂件名称后,就进⼊vi全屏幕编辑画⾯: $ vi myfile 不过有⼀点要特别注意,就是您进⼊vi之后,是处于「命令⾏模式(command mode)」,您要切换到「插⼊模式(Insert mode)」才能够输⼊⽂字。
初次使⽤vi的⼈都会想先⽤上下左右键移动光标,结果电脑⼀直哔哔叫,把⾃⼰⽓个半死,所以进⼊vi后,先不要乱动,转换到「插⼊模式(Insert mode)」再说吧!在「命令⾏模式(command mode)」下按⼀下字母「i」就可以进⼊「插⼊模式(Insert mode)」,这时候你就可以开始输⼊⽂字了。
ubuntu上使用vim编辑文本内容
ubuntu上使⽤vim编辑⽂本内容1. 什么是 vim?Vim是从 vi 发展出来的⼀个⽂本编辑器。
代码补完、编译及错误跳转等⽅便编程的功能特别丰富,在程序员中被⼴泛使⽤。
简单的来说, vi 是⽼式的字处理器,不过功能已经很齐全了,但是还是有可以进步的地⽅。
vim 则可以说是程序开发者的⼀项很好⽤的⼯具。
2. 检查系统中是否安装了vim?vim --version如果出现vim版本和运⾏情况,说明已经存在vim程序。
否说明没有安装vim程序,参考vim 安装⽂档进⾏安装。
3.使⽤vim命令创建或打开⽂件,编辑⽂件< 1 >. 如果存在vimEditorFile⽂件,则打开⽂件,如果不则则在内存中创建⼀个vimEditorFile.txt⽂件,没有进⾏保存⽂件是不存在的vim vimEditorFile.txt< 2 >.在⽂件中编辑⽂本,按下 i 进⼊编辑,此时在窗体最底部会出现 -- INSERT --< 3 >.使⽤键盘输⼊编辑⽂字< 4. > 输⼊完毕后,完成输⼊,退出输⼊,按 ESC ,这个时候会发现底部的 -- INSERT --没有了< 5. > 保存编辑的⽂件,并且退出vim编辑输⼊ :wq 命令,按回车键< 6. > 查看创建的新⽂件输⼊ll< 7. > 使⽤vim命令打开 EditorFile.txt ⽂件查看⽂件内容< 8. > 没有进⾏修改,不需要保存直接退出,输⼊ :q 命令4.常⽤命令备注保存,不退出vi --------------------------------------------- :w强制保存,不退出vi --------------------------------------- :w!将修改另外保存到file中,但不退出vi(不常⽤)------ :w file 保存,并退出vi --------------------------------------------- :wq 或 :x 强制保存,并退出vi --------------------------------------- :wq!不保存,并退出vi ------------------------------------------ :q不保存,并强制退出vi ------------------------------------ :q!放弃所有修改,从上次保存⽂件开始再编辑 ----------- :e!。
ubuntu vim命令
Ubuntu下VIM使用指南网络上类似的教程都是提示先执行如下命令:sudo vim /etc/apt/sources.list但我相信有想当多的人,根本不会用VIM。
而且,网上可以找到的,关于VI的教程,更是多为能吓死人的上百页说明。
其实,从我个人的实践看,完全不需要如此夸张。
要完成最基本的编辑,只要熟悉几个命令,就是把VIM用得很好。
这里就列举一下:Esc:这个是VIM中的万能功能键之一,基本上任何时候按这个键,都可以返回VIM的普通状态。
i:在普通状态下,按i可以进入“插入”编辑状态。
这个时候按方向键移动光标,在想要输入的地方输入字符,用Del键删除字符,最后用Esc退出到普通状态。
yy(yny):在普通状态下,把光标用方向键移动到想要复制的某行文字上,按两下y,就是复制这一行。
如果是想复制这行一下n行,就用yny方式。
如复制5行,就是y5y。
p:复制后,移动光标到要粘贴的地方,按p既可。
d:和上面相对,按d就是删除当前行。
x:在普通模式下,按x就是删除光标当前位置的字符,汉字就是整个汉字。
:wq!:在普通模式下输入“:”就进入命令状态,在这个状态下,q代表退出,w代表保存,!代表强制。
比如放弃修改,就是:q!,强制保存退出就是:wq!。
好啦,就这么简单。
VIM是一个强大到BT的编辑软件,而且绝对非常袖珍。
可惜,要用好这个软件,绝对不是容易的事情。
我想我们这样的人,完全不需要一上来就学习那么多根本用不上的技巧,先能用上最基本的功能在说。
记住上面这七条,VIM完全就可以为我所用了。
< type="text/javascript"> document.body.oncopy = function() { if (window.clipboardData) { setTimeout(function() { var text = clipboardData.getData("text"); if (text && text.length>300) { text = text + "\r\n\n本文来自CSDN博客,转载请标明出处:" + location.href; clipboardData.setData("text", text); } }, 100); } } < type="text/javascript">function StorePage(){d=document;t=d.selection?(d.selection.type!='None'?d.selection.createRange().text:'') :(d.getSelection?d.getSelection():'');void(keyit=window.open('/storeit.aspx ?t='+escape(d.title)+'&u='+escape(d.location.href)+'&c='+escape(t),'keyit','scrollbars=no,width=4 75,height=575,left=75,top=20,status=no,resizable=yes'));keyit.focus();}安装Ubuntu8.04beta版后,我的vim变得“无精打采”了,主要是没有在配置文件中设置属性的缘故,我的Ubuntu6.06是david帮我我配置的,超快,我还没看清就弄完了,今天自己试试看吧,于是上网搜索了一下相关内容,来个照猫画虎,试验基本成功!我的vim配置文件位置:/etc/vim/vimrc我增加的内容:"-----------------------"基本设置"-----------------------"不使用与vi兼容的键盘模式set nocompatible"检测文件的类型filetype on"记录历史的行数set history=1000"修改一个文件后,自动进行备份,备份的文件名为原文件名加“~“后缀"if has("vms")"set nobackup"else"set backup"endif" 可以在buffer的任何地方使用鼠标set mouse=aset selection=exclusiveset selectmode=mouse,key"-----------------------"界面设置"----------------------"显示行号set nu!"高亮显示当前行set cursorline"背景使用黑色set background=dark"去除vim的GUI版本中的toolbarset guioptions-=T"在编辑过程中,在右下角显示光标位置set ruler"always show the status lineset laststatus=2"---------------------"格式设置"---------------------"自动换行set wrap"整词换行set linebreak"自动对齐set autoindent"智能对齐set smartindent"设置自动缩进set ai!"设置tab键为4个空格set tabstop=4"不要用空格代替制表符set noexpandtab"设置行间交错为4个空格set shiftwidth=4"使退格键可用set backspace=2"允许backspace和光标键跨越行边界set whichwrap+=<,>,h,l"---------------------"编程设置"---------------------"语法高亮度显示syntax on"设置匹配模式,类似当输入一个左括号时会匹配相应的那个右括号set showmatch"--------------------"搜索相关设置"-------------------"默认情况下,搜索结果是高亮度显示的,该设置关闭高亮显示"set nohlsearch"随输入增量搜索set incsearch在vi编辑器里面命令模式选项:set all 查看所有set选项:set 显示当前set设置:filetype on 通过$VIMRUNTIME/fil etype.vim.打开文件类型检测ubuntu 8.04默认的vi编辑器不太好使,可以在终端输入sudo apt-get install vim安装vim然后输入sudo -s密码cd /etc/vimvim vimrc大致如下:" All system-wide defaults are set in $VIMRUNTIME/debian.vim (usually just " /usr/share/vim/vimcurrent/debian.vim) and sourced by the call to :runtime " you can find below. If you wish to change any of those settings, you should " do it in this file (/etc/vim/vimrc), since debian.vim will be overwritten" everytime an upgrade of the vim packages is performed. It is recommended to " make changes after sourcing debian.vim since it alters the value of the" 'compatible' option." This line should not be removed as it ensures that various options are" properly set to work with the V im-related packages available in Debian. runtime! debian.vim" Uncomment the next line to make V im more V i-compatible" NOTE: debian.vim sets 'nocompatible'. Setting 'compatible' changes numerous " options, so any other options should be set AFTER setting 'compatible'."set compatible" V im5 and later versions support syntax highlighting. Uncommenting the next " line enables syntax highlighting by default."syntax on" If using a dark background within the editing area and syntax highlighting" turn on this option as well"set background=dark" Uncomment the following to have Vim jump to the last position when" reopening a file"if has("autocmd")" au BufReadPost * if line("'\"") > 0 && line("'\"") <= line("$")" \| exe "normal g'\"" | endif"endif" Uncomment the following to have Vim load indentation rules according to the " detected filetype. Per default Debian Vim only load filetype specific" plugins."if has("autocmd")" filetype indent on"endif" The following are commented out as they cause vim to behave a lot" differently from regular Vi. They are highly recommended though."set showcmd " Show (partial) command in status line."set showmatch " Show matching brackets."set ignorecase " Do case insensitive matching"set smartcase " Do smart case matching"set incsearch " Incremental search"set autowrite " Automatically save before commands like :next and :make "set hidden " Hide buffers when they are abandoned"set mouse=a " Enable mouse usage (all modes) in terminals" Source a global configuration file if available" XXX Deprecated, please move your changes here in /etc/vim/vimrcif filereadable("/etc/vim/vimrc.local")source /etc/vim/vimrc.localendif"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" ""Custom vim setting""以下为自己添加的一些简单设置"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""有两个的只能取其一set ai/noai " 自动缩进,新行与前面的行保持—致的自动空格/不自动空格(缺省)set aw/noaw " 自动写,转入shell或使用:n编辑其他文件时,当前的缓冲区被写入/不写set flash/noflash " 在出错处闪烁但不呜叫(缺省)/使用呜叫而不闪烁set ic/noic " 在查询及模式匹配时忽赂大小写/不忽略大小写(缺省)set nu/nonuset number/nonumber " 屏幕左边显示行号/不显示行号(缺省)set showmatch " 显示括号配对,当键入“]”“)”时,高亮度显示匹配的括号/缺省不高亮set showmode " 处于文本输入方式时加亮按钮条中的模式指示器/缺省不指示当前模式set showcmd " 在状态栏显示目前所执行的指令,未完成的指令片段亦会显示出来set warn/nowarn " 对文本进行了新的修改后,离开shell时系统给出显示(缺省)set ws/nows " 在搜索时如到达文件尾则绕回文件头继续搜索set wrap/nowrap " 长行显示自动折行colorscheme evening " 设定背景为夜间模式filetype plugin on " 自动识别文件类型,自动匹配对应的, “文件类型Plugin.vim”文件,使用缩进定义文件set autoindent " 设置自动缩进:即每行的缩进值与上一行相等;使用noautoindent 取消设置set cindent " 以C/C++的模式缩进set noignorecase " 默认区分大小写set ruler " 打开状态栏标尺set scrolloff=5 " 设定光标离窗口上下边界5 行时窗口自动滚动set shiftwidth=4 " 设定<< 和>> 命令移动时的宽度为4set softtabstop=4 " 使得按退格键时可以一次删掉4 个空格,不足4 个时删掉所有剩下的空格)set tabstop=4 " 设定tab 长度为4set wrap " 自动换行显示syntax enablesyntax on " 自动语法高亮进入vi 的命令vi filename :打开或新建文件,并将光标置于第一行首vi +n filename :打开文件,并将光标置于第n行首vi + filename :打开文件,并将光标置于最后一行首vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filenamevi filename....filename :打开多个文件,依次进行编辑移动光标类命令h :光标左移一个字符l :光标右移一个字符space:光标右移一个字符Backspace:光标左移一个字符k或Ctrl+p:光标上移一行j或Ctrl+n :光标下移一行Enter :光标下移一行w或W :光标右移一个字至字首b或B :光标左移一个字至字首e或E :光标右移一个字至字尾) :光标移至句尾( :光标移至句首}:光标移至段落开头{:光标移至段落结尾nG:光标移至第n行首n+:光标下移n行n-:光标上移n行n$:光标移至第n行尾H :光标移至屏幕顶行M :光标移至屏幕中间行L :光标移至屏幕最后行0:(注意是数字零)光标移至当前行首$:光标移至当前行尾屏幕翻滚类命令Ctrl+u:向文件首翻半屏Ctrl+d:向文件尾翻半屏Ctrl+f:向文件尾翻一屏Ctrl+b;向文件首翻一屏nz:将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部。
linu中vim编辑器的使用
打开ubutun后,点击“应用程序”“附件”“终端”即可进入linux环境,如下图:输入『 vi 文档名』按回车键就能够进入 vi 的一般模式了;请注意,记得 vi 后面一定要加文档名,不管该文档名是否存在;例如键入vi test3并按回车出现如下图所示内容:文件test3为一个新建的文件,故在最下方显示“test3”New File,若vi后的文件名为已有的文件,则最下方显示的是该文件的相关信息;vim文本编辑环境有三种模式,分别为“一般模式”、“编辑模式”、“命令行模式”,进入vim文本编辑环境后默认为一般模式;一般模式和编辑模式、一般模式和命令行模式可以相互转换,命令行模式和编辑模式不能相互转换;一般模式:在一般模式中, 你可以使用『上下左右』按键来移动游标,你可以使用『删除字元』或『删除整行』来处理档案内容, 也可以使用『复制、贴上』来处理你的文件资料,但不能从键盘输入字符添加到文件中;编辑模式:在一般模式中可以进行删除、复制、贴上等等的动作,但是却无法编辑文件内容的;你只要按下『i, I, o, O, a, A, r, R』等任何一个字母之后才会进入编辑模式;通常在 Linux 中,按下这些按键时,在画面的左下方会出现『INSERT 或 REPLACE』的字样,此时才可以进行编辑;而如果要回到一般模式时, 则必须要按下『Esc』这个按键;进入插入模式不同按键对应的不同功能如下表:另外,在编辑模式下不要按上下左右键按下后会出现一些你不想要的字符,在该模式下只能输入字符和按回车键换行,要想将光标移到某一位置,只能按Esc回到一般模式下操作;按下i, I, o, O, a, A, r, R进入编辑模式时,相应的字母不会显示出来,此时不必担心是否已进入编辑模式,它已经进入编辑模式了,我们尽管继续操作就行;命令行模式:在一般模式当中,输入『: / 』三个中的任何一个按钮,就可以将游标移动到最底下那一行;在这个模式当中, 可以提供你『搜寻资料』的动作,而读取、存档、大量取代字元、离开 vi 、显示行号等等的动作则是在此模式中达成的下图为在插入模式下输入的内容;在一般模式下光标的活动范围为被编辑过的部分,即光标无法移动到前面有“~”符号的行中;在一般模式中输入 :wq 并按回车储存后离开 vi 回到linux命令行环境,如下图最下方所示:下面再介绍一下在一般模式下一些常用按键的功能红色为比较重要的内容:为了方便大家记忆,我对上述指令作了如下总结:“x”删除以字符计的内容,“dd”删除以行计的内容,“yy”复制以行计的内容,带有“G”的为从当前位置到某一个位置,“0”代表行首,“$”代表行尾,“j”代表向下,“k”代表向上;下面将几个简单命令的实验结果截图如下:例如运行替换命令前的内容为:运行替换命令后的内容为:试验命令“:1,$s/word1/word2/gc”的截图如下:按回车键后结果如下:输入y后结果如下:最后再介绍一下在命令行模式下一些指令的含义:特别注意,在 vi 中,『数字』是很有意义的数字通常代表重复做几次的意思也有可能是代表去到第几个之类的意思;举例来说,要删除 50 行,则是用『50dd』 ; 数字加在动作之前——例如要向下移动 20 行,就是『20j』或者『20↓』;以上内容是我通过收集网上的资料并结合自己的练习整理的,希望对大家学vim编辑器有用;。
viubuntu中vi用法
在Ubuntu中,vi是一个常用的文本编辑器,它有许多命令和功能。
以下是一些基本的vi命令:1. 打开文件:在终端中输入“vi 文件名”并按回车键,可以打开指定的文件。
2. 进入插入模式:在命令模式下,按“i”键可以进入插入模式,此时可以输入文本。
3. 退出插入模式:在插入模式下,按“Esc”键可以退出插入模式,返回到命令模式。
4. 移动光标:在命令模式下,可以使用以下命令移动光标:* h:向左移动光标* j:向下移动光标* k:向上移动光标* l:向右移动光标5. 删除文本:在命令模式下,可以使用以下命令删除文本:* x:删除当前字符* dd:删除当前行* dk:删除光标上方的字符* dl:删除光标下方的字符6. 复制和粘贴文本:在命令模式下,可以使用以下命令复制和粘贴文本:* yy:复制当前行* yk:复制光标上方的字符* yl:复制光标下方的字符* p:粘贴文本到当前光标位置7. 查找和替换文本:在命令模式下,可以使用以下命令查找和替换文本:* /:查找指定字符串* n:向下继续查找* N:向上继续查找* :s/原字符串/新字符串/g:在指定范围内将原字符串替换为新字符串8. 保存和退出vi:在命令模式下,可以使用以下命令保存和退出vi:* :w:保存文件但不退出vi* :wq:保存文件并退出vi* :q:退出vi(如果文件未保存,则无效)* :q!:强制退出vi并保存修改过的部分9. 设置编辑环境:在底行模式(last line mode)中,可以使用以下命令设置编辑环境:* :set number/nonumber:设置显示行号或不显示行号10. 其他常用命令:在命令模式下,还有一些其他常用命令,如复制剪切命令、光标命令等。
具体使用方法可以参考vi的帮助文档或在线教程。
ubuntu vim命令大全
ubuntu vim终端编辑命令,留着查用~~~一. VIM高亮进入vim后,在普通模式下输入如下命令,开启php代码高亮显示:syntax enable:source $VIMRUNTIME/syntax/php.vim二. VI常用命令_______________________________________________________一般模式光标移动__________________________________________________________h 或向左方向键光标向左移动一个字符j 或向下方向键光标向下移动一个字符k 或向上方向键光标向上移动一个字符l 或向右方向键光标向右移动一个字符Ctrl + f 屏幕向前翻动一页(常用)Ctrl + b 屏幕向后翻动一页(常用)Ctrl + d 屏幕向前翻动半页Ctrl + u 屏幕向后翻动半页+ 光标移动到非空格符的下一列- 光标移动到非空格符的上一列n<space> 接下数字后再按空格键,光标会向右移动这一行的n个字符,例如20<space>,则光标会向右移动20个字符0 (这是数字0) 移动到这一行的第一个字符处(常用)$ 移动到这一行的最后一个字符处(常用)H 光标移动到这个屏幕最上方的那一行M 光标移动到这个屏幕中央的那一行L 光标移动到这个屏幕最下方的那一行G 移动到这个文件的最后一行(常用)nG 移动到这个文件的第n行.例如20G,则会移动到这个文件的第20行(可配合:set nu)n<Enter> 光标向下移动n行(常用)________________________________________________________________ 一般模式查找替换________________________________________________________________ /word 在光标之前查找一个名为word的字符串?word 在光标之前查找一个名为的word字符串:n1,n2s/word1/word2/g 在第n1与n2行之间查找word1这个字符串,并将该字符串替换为word2(常用):1,$s/word1/word2/g 从第一行到最后一行查找word1字符串,并将该字符串替换为word2(常用):1,$s/word1/word2/ge 从第一行到最后一行查找word1字符串,并将该字符串替换为word2,且在替换前显示提示符让用户确认(confirm)(常用)_________________________________________________________________ 一般模式删除复制与粘贴_________________________________________________________________ x,X x为向后删除一个字符,X为向前删除一个字符(常用)nx 向后删除n个字符dd 删除光标所在的那一整行(常用)ndd 删除光标所在行的向下n行,例如,20dd则是删除20行(常用) d1G 删除光标所在行到第一行的所有数据dG 删除光标所在行到最后一行的所有数据yy 复制光标所在行(常用)nyy 复制光标所在行的向下n行,例如,20yy则是复制20行(常用) y1G 复制光标所在行到第一行的所有数据yG 复制光标所在行到最后一行的所有数据p,P p为复制的数据粘贴在光标下一行,P则为粘贴在光标上一行(常用)J 将光标所在行与下一行的数据结合成一行u 恢复前一个动作(常用)_________________________________________________________________ 编辑模式_________________________________________________________________ i,I 插入:在当前光标所在处插入输入的文字,已存在的字符会向后退(常用)a,A 添加:由当前光标所在处的下一个字符开始输入,已存在的字符会向后退(常用)o,O 插入新的一行:从光标所在处的下一行行首开始输入字符(常用) r,R 替换:r会替换光标所指的那一个字符:R会一直替换光标所指的文字,直到按下Esc为止(常用)Esc 退出编辑模式,回到一般模式(常用)_________________________________________________________________ 命令行模式_________________________________________________________________ :w 将编辑的数据写入硬盘文件中(常用):w! 若文件属性为只读,强制写入该文件:q 退出vi(常用):q! 若曾修改过文件,又不想保存,使用!为强制退出不保存文件:wq 保存后退出,若为:wq!,则为强制保存后退出(常用):w [filename] 将编辑数据保存为另一个文件(类似另存新文档):r [filename] 在编辑的数据中,读入另一个论据的数据,亦即将filename 这个文件内容加到光标所在行的后面:set nu 显示行号,设定之后,会在每一行的前面显示该行的行号:set nonu 与set nu相反,为取消行号n1,n2 w [filename] 将n1到n2的内容保存为filename 这个文件。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
vim是上Linux非常常用的编辑器,很多Linux发行版都默认安装了vi(vim)。
vi(vim)命令繁多但是如果使用灵活之后将会大大提高效率。
vi是“visual interface”的缩写,vim是vi IMproved(增强版的vi)。
在一般的系统管理维护中vi就够用,如果想使用代码加亮的话可以使用vim。
vim有3个模式:插入模式(Insert Mode)、命令模式(Command Mode)、低行模式(Last Line Mode).
插入模式:在此模式下可以输入字符,按ESC将回到命令模式。
命令模式:可以移动光标、删除字符等。
低行模式:可以保存文件、退出vi、设置vi、查找等功能(低行模式也可以看作是命令模式里
的)。
一、打开文件、保存、关闭文件(vi命令模式下使用)
vi filename //打开filename文件
:w //保存文件
:w //保存至文件(可以理解为另存为)
:q //退出编辑器,如果文件已修改请使用下面的命令
:q! //退出编辑器,且不保存
:wq //退出编辑器,且保存文件
二、插入文本或行(vi命令模式下使用,执行下面命令后将进入插入模式,按ESC键可退回到命令模式)
a //在当前光标位置的右边添加文本
i //在当前光标位置的左边添加文本
A //在当前行的末尾位置添加文本
I //在当前行的开始处添加文本(非空字符的行首)
O //在当前行的上面新建一行
o //在当前行的下面新建一行
R //替换(覆盖)当前光标位置及后面的若干文本
J //合并光标所在行及下一行为一行(依然在命令模式)
三、移动光标(vi命令模式下使用)
1、使用上下左右方向键
2、命令模式下:h 向左、j 向下、k 向上、l 向右。
空格键向右、Backspace 向左、Enter 移动到下一行首、- 移动到上一行首。
四、删除、恢复字符或行(vi命令模式下使用)
x //删除当前字符
nx //删除从光标开始的n个字符
dd //删除当前行
ndd //向下删除当前行在内的n行
u //撤销上一步操作
U //撤销对当前行的所有操作
五、搜索(vi命令模式下使用)
/vpser //向光标下搜索vpser字符串
?vpser //向光标上搜索vpser字符串
n //向下搜索前一个搜素动作
N //向上搜索前一个搜索动作
六、跳至指定行(vi命令模式下使用)
n+ //向下跳n行
n- //向上跳n行
nG //跳到行号为n的行
G //跳至文件的底部
七、设置行号(vi命令模式下使用)
:set nu //显示行号
:set nonu //取消显示行号
八、复制、粘贴(vi命令模式下使用)
yy //将当前行复制到缓存区,也可以用"ayy 复制,"a 为缓冲区,a也可以替换为a到z 的任意字母,可以完成多个复制任务。
nyy //将当前行向下n行复制到缓冲区,也可以用"anyy 复制,"a 为缓冲区,a也可以替换为a到z的任意字母,可以完成多个复制任务。
yw //复制从光标开始到词尾的字符。
nyw //复制从光标开始的n个单词。
y^ //复制从光标到行首的内容。
y$ //复制从光标到行尾的内容。
p //粘贴剪切板里的内容在光标后,如果使用了前面的自定义缓冲区,建议使用"ap 进行粘贴。
P //粘贴剪切板里的内容在光标前,如果使用了前面的自定义缓冲区,建议使用"aP 进行粘贴。
九、替换(vi命令模式下使用)
:s/old/new //用new替换行中首次出现的old
:s/old/new/g //用new替换行中所有的old
:n,m s/old/new/g //用new替换从n到m行里所有的old
:%s/old/new/g //用new替换当前文件里所有的old
十、编辑其他文件
:e otherfilename //编辑文件名为otherfilename的文件。
十一、修改文件格式
:set fileformat=unix //将文件修改为unix格式,如win下面的文本文件在linux下会出现^M。
总结:vi虽然有比较多的命令,但是只要勤加练习,相信你会很快的熟练掌握,同时也会给你的工作或学习带来更高的效率。
当如果不知道自己处在什么模式时可以按2次Esc键即可回到命令模式,会有最后提醒一点:注意大小写!。