vim讲解
文本编辑vi使用
最好使用vim,采用sudo apt-get install vim
vi是Linux及类Unix系统中主流的命令行文本编辑器,功能极为强大,vim是增强版本的vim。Vim的高级地方最显著地特点是可以撤销,命令u撤销。vi只能撤销一次。而vim可以撤销多次。vi分为三个模式:命令模式,插入模式,低行模式
1) 命令行模式command mode
控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert
mode下,或者到 last line mode。
2) 插入模式(Insert mode)
只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模
式。
3) 将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号……等。不过一般我们在使用时把vi简化成两个模式,就是将底行模式也算入命令行模式command mode。
vi使用,首先用vi创建文件:vi test ,通过按键i进入插入模式,按键
ESC退出插入模式,按:进入低行模式,wq保存退出。
教几个开启vi的常用方法:
vi +8 test #直接打开test文件并将光标移到低8行
vi + test #直接跳至最后一行
vi +/xxxx test #移到xxxx第一次出现的位置,按n跳至下一个出现xxxx
的位置
vi file1 file2 #同时打开两个文件,通过命令切换:n切换下一个,:N
向前切换,但是vi不行,vim可以
命令模式常用命令:
i 插入
o 在当前行下插入新行,并切换到输入模式,注意会变成插入模式
yy 复制一行
#yy 复制光标所在位置的#行
p 粘贴
u 撤销上一个操作
r 替换当前字符
/ 搜索
:set n 设置行号
移动光标
vi可以直接用键盘上的光标来上下左右移动,但正规vi是用h(左)j(下)k(上)l(右)
G 移到文章最尾一行
ctrl + f 屏幕往“前”移动一页。
ctrl + b 屏幕往“后”移动一页。
删除文字
x 删除光标所在位置的“后面”一个字符。
X 删除光标所在位置的“前面”一个字符
#x 「6x」表示删除光标所在位置的“后面”6个字符。
#X 「20X」表示删除光标所在位置的“前面”20个字符
dd 删除光标所在行
#dd 从光标所在行开始删除#行
dG 从光标所指的一行到最后删除
全选复制:
ggVG才是真正的全选复制,注意这是合起来的。
gg 光标到第一行
V 进入virsual模式
G 光标到最后一行,直接全选了
y 复制到0号寄存器
+y 复制到系统剪切板
d 删除全选的内容
退出vi及保存文件
:1,$y 复制从第一行到最后一行
:wq 保存退出
:q 退出不保存
:q! 强行退出
:x 保存并退出,相当于:wq
:w 保存修改
参考:http://os.chinaunix.net/a2009/0103/995/000000995031.shtml
二、配置vim
vi .vimrc
参考:http://www.cnblogs.com/ma6174/archive/2011/12/10/2283393.html
vim讲解的更多相关文章
- vim基础(一)
今天看了下兄弟连的VIM讲解,又学了几个新命令,记录一下. 插入与删除 插入 首先还是插入,以前只知道i.今天发现原来还有a\A\i\I\o\O,下面具体说一下: 命令 含义 a 在光标后插入 A 在 ...
- vim 常用命令(记录)
很好的vim讲解:https://blog.csdn.net/weixin_37657720/article/details/80645991 命令模式:默认模式.输入ctrl+c, 输入:,转换为命 ...
- Linux Vim编辑器使用简单讲解
在Linux中,主要编辑器为vi或者vim,本文围绕vim做简单的讲解说明:Linux默认自带vi(vim)编辑器,其程序包为:[root@linuxidc.com ~]# rpm -qf `whic ...
- [Linux/Ubuntu] vi/vim 使用方法讲解(转载)
转自:http://www.cnblogs.com/emanlee/archive/2011/11/10/2243930.html vi/vim 基本使用方法 vi编辑器是所有Unix及Linux系统 ...
- Linux命令vi/vim 使用方法讲解
vi/vim 基本使用方法 vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单地介绍一下它的用法和一小部分指令.由于对Unix及Linux系统的 ...
- [Linux/Ubuntu] vi/vim 使用方法讲解
vi/vim 基本使用方法 vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单地介绍一下它的用法和一小部分指令.由于对Unix及Linux系统的 ...
- vim 文本替换讲解
在VIM中进行文本替换: 1. 替换当前行中的内容: :s/from/to/ (s即substitude) :s/from/to/ : 将当前行中的第一个from,替换成to.如果当前行含有多个 fr ...
- [转][Linux/Ubuntu] vi/vim 使用方法讲解
vi/vim 基本使用方法 vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单地介绍一下它的用法和一小部分指令.由于对Unix及Linux系统的 ...
- Vim经典讲解
http://blog.csdn.net/niushuai666/article/details/7275406
随机推荐
- [Windows Azure] Querying Tables and Entities
Constructing Filter Strings When constructing a filter string, keep these rules in mind: Use the log ...
- 无锁算法CAS 概述
无锁算法CAS 概述 JDK5.0以后的版本都引入了高级并发特性,大多数的特性在java.util.concurrent包中,是专门用于多线并发编程的,充分利用了现代多处理器和多核心系统的功能以编写大 ...
- java、js的编码、解码
如果在地址栏挂载参数,特别是包含中文,往往要进行编码,取值时再解码,以下是java和js中编码.解码的各自方法. java: @Test public void test3() throws Unsu ...
- 在smarty模板中嵌入php代码
我个人并不太喜欢smarty的语法,写起来比较啰嗦易出现匹配出错,但是旧项目中有许多工程都是采用它作模板.最近需要在此上稍微加一些PHP的内容,但我不想在模板控制层去一个一个assign,而想在模板文 ...
- Linux rm命令
rm可以用来删除文件和文件夹. rm --help Usage: rm [OPTION]... FILE... Remove (unlink) the FILE(s). -f, --force ...
- Untiy 接入 移动MM 详解
原地址:http://www.cnblogs.com/alongu3d/p/3627936.html Untiy 接入 移动MM 详解 第一次接到师傅的任务(小龙),准备着手写untiy接入第三方SD ...
- docker 通过commit方法创建镜像(Tomcat+Java+Scala)
前一阵试了试写Dockerfile创建docker image,但有时全靠Dockerfile写实在有些难度,退而求其次试一试使用commit来创建镜像: 想了想干脆创建一个Java+Scala+To ...
- python List&Set&Dict交集、并集、差集
1.python List交集.并集.差集 1). 获取两个list 的交集#方法一: a=[2,3,4,5] b=[2,5,8] tmp = [val for val in a if val in ...
- P44、面试题4:替换空格
题目:请实现一个函数,把字符串中的每个空格替换成“%20”.例如输入“We are happy.”,则输出“We%20are%20happy.”. 如果用java string类中提供的replace ...
- 怎么知道RTL Schematic中的instance与哪段代码对应呢
2013-06-23 20:15:47 ISE综合后可以看到RTL Schematic,但我们知道在RTL编码时,要经常问自己一个问题“我写的这段代码会综合成什么样的电路呢”.对于一个简单的设计,比如 ...