vi和vim区别及命令详解

vi和vim都是Linux中的编辑器,不同的是vim比较高级,可以视为vi的升级版本。vi使用于文本编辑,但是vim更适用于coding。 
    现将vim的命令行收集于下:

vi有3个模式:插入模式、命令模式、低行模式。

插入模式:在此模式下可以输入字符,按ESC将回到命令模式。 
    命令模式:可以移动光标、删除字符等。 
    低行模式:可以保存文件、退出vi、设置vi、查找等功能(低行模式也可以看作是命令模式里的)。

一、打开文件、保存、关闭文件(vi命令模式下使用)

vi filename       //打开filename文件 
:w       //保存文件 
:w vpser.net //保存至vpser.net文件 
: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^      //复制从光标到行首的内容。  VPS侦探 
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和vim区别及命令详解

时间: 2024-11-08 22:22:55

vi和vim区别及命令详解的相关文章

Unix Linux vi vim 使用手册|vi vim 常用命令 详解

Unix Linux vi vim 使用手册 Vi 简介 Vi 是 Unix 世界里极为普遍的全萤幕文书编辑器,几乎可以说任何一台 Unix 机器都 会提供这套软体.Linux 当然也有,它的 vi 其实是 elvis(版权问题),不过它们都 差不多.熟悉 DOS 下的文书处理後,也许会感到 vi 并不好用:Unix 上也已经发展出 许多更新.更好用的文书编辑器,但是并不一定每一台 Unix 机器上都会安装这些额外 的软体.所以,学习 vi 的基本操作还是有好处,让你在各个不同的机器上得心应手.

linux 的vim命令详解

高级一些的编辑器,都会包含宏功能,vim当然不能缺少了,在vim中使用宏是非常方便的: :qx     开始记录宏,并将结果存入寄存器x q     退出记录模式 @x     播放记录在x寄存器中的宏命令 稍微解释一下,当在normal模式下输入:qx后,你对文本的所有编辑动作将会被记录下来,再次输入q即退出了记录模 式,然后输入@x对刚才记录下来的命令进行重复,此命令后可跟数字,表示要重复多少次,比如@x20,可以重复20次.这个在文本的批处理中是非常有用的. 同时编辑多个文件 在vim众多

vim 命令详解

vim 命令详解 vi: Visual Interface 可视化接口vim: VI iMproved VI增强版 全屏编辑器,模式化编辑器 vim模式: 编辑模式(命令模式) 输入模式 末行模式 模式转换: 编辑-->输入: i: 在当前光标所在字符的前面,转为输入模式: a: 在当前光标所在字符的后面,转为输入模式: o: 在当前光标所在行的下方,新建一行,并转为输入模式: I:在当前光标所在行的行首,转换为输入模式 A:在当前光标所在行的行尾,转换为输入模式 O:在当前光标所在行的上方,新

转载:linux vi命令详解

转自:http://www.cnblogs.com/mahang/archive/2011/09/01/2161672.html 刚开始学着用linux,对vi命令不是很熟,在网上转接了一篇. vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单地介绍一下它的用法和一小部分指 令.由于 对Unix及Linux系统的任何版本,vi编辑器是完全相同的,因此您可以在其他任何介绍vi的地方进一步了解它.Vi也是Linux中最基本的文本编 辑器,学会它

2.2 linux sed命令详解

简介 sed 是一种在线编辑器,它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区中,称为"模式空间"(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕.接着处理下一行,这样不断重复,直到文件末尾.文件内容并没有 改变,除非你使用重定向存储输出.Sed主要用来自动编辑一个或多个文件:简化对文件的反复操作:编写转换程序等. sed使用参数 [[email protected] ~]# sed [-nefr] [动作] 选项与参数

linux主要shell命令详解

Linux主要shell命令详解 shell是用户和Linux操作系统之间的接口.Linux中有多种shell,其中缺省使用的是Bash.本章讲述了shell的工作原理,shell的种类,shell的一般操作及Bash的特性. 什么是shell Linux系统的shell作为操作系统的外壳,为用户提供使用操作系统的接口.它是命令语言.命令解释程序及程序设计语言的统称. shell是用户和Linux内核之间的接口程序,如果把Linux内核想象成一个球体的中心,shell就是围绕内核的外层.当从sh

cut\grep\awk\sed命令详解

cut\grep\awk\sed命令详解 1.cut命令详解及实例 (1)作用:提取文件中指定的列 语法格式:cut  选项  文件名   (2)选项作用:      -d 分隔符     按照指定的分割符进行分割      -f 列号       指定提取第几列      -c 字符范围  不依赖分割符来分割,而是通过字符范围进行字段提取      -b 字节数     以字节为单位进行分割.    (3)cut实际应用案例. 例1:cut的-d和-f选项的使用,列出/etc/passwd里面

Linux命令详解--文件与目录查找

一·文件搜索 which:用来查找命令的绝对路径-- 显示shell命令的绝对路径-- 仅仅会在PATH变量中搜索要查找的命令-- 搜索时先查找别名,然后从PATH中查找1.查看用户的PATH变量:命令的搜索路径# echo $PATH/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/root/bin command not found可能原因:1)敲错了2)命令没有安装3)命令

[转帖]基于VIM漏洞CVE-2019-12735的VIM宏后门病毒详解

基于VIM漏洞CVE-2019-12735的VIM宏后门病毒详解 不明觉厉 只要是人做的东西 就会有bug 就会有安全问题 就看发现bug 或者是发现安全问题 有没有收益了 会用linux的都是比较熟悉操作系统等概念的 不容易被钓鱼 反过来 很多用windows的能力会很差, 所以 windows上面显的更加脆弱. 这就好比开丰田车出事故的人 要比开众泰出事故的人要多很多一个道理. 众泰开的少 而且大家都可能会修车了.. https://www.freebuf.com/vuls/205516.h