Vim常用命令总结
Vim常用命令总结:
下文是小编自己整理的关于日常linux vim编程过程中用的一些常用命令,资料参考鸟哥的
如果有需要的小伙伴可以参考一下!(底部有下载地址)
一、 一般模式可用的按钮说明
1.1 光标移动
|
h (←) , j(↓),k (↑) ,l (→) |
上下左右移动一个字符 |
|
[Ctrl] + [f] |
屏幕『向下』移动一页,相当亍 [Page Down]按键 (常用) |
|
[Ctrl] + [b] |
屏幕『向上』移动一页,相当亍 [Page Up] 按键 (常用) |
|
n<space> |
n数字,光标向右移动n个字符 |
|
0 或功能键[Home] |
移动到这一行到最前面字符处 |
|
$ 或功能键[End] |
移动到这一行到最后面字符处 |
|
nG |
n 为数字。移动到这个档案到第 n 行。 (可配合 :set nu) |
|
gg |
移动到这个档案到第一行,相当于 1G 啊! |
|
n<Enter> |
n 为数字。光标向下移 n 行 |
1.2 搜索和取代
|
/word |
向光标之下寻找一个名称为 word 的字符串 |
|
|
?word |
向光标之上寻找一个字符串名称为 word 的字符串。 |
|
|
n |
重复前一个搜寻的动作 |
|
|
N |
与 n 刚好相反,为『反向』迚行前一个搜寻动 作 |
|
|
使用 /word 配合 n 及 N 是非常有帮助的!可以让你重复的找到一些你搜寻的关键词! |
||
|
:n1,n2s/word1/word2/g |
在第 n1 不 n2 行之间寻找 word1 这个字符串,并 将该字符串取代为 word2 ! |
|
|
:1,$s/word1/word2/g |
从第一行到最后一行寻找 word1 字符串,并将该字符串取代为 word2 ! |
|
|
:1,$s/word1/word2/gc |
从第一行到最后一行寻找 word1 字符串,并将该字符串取代为 word2 !且在取代前显示提示字符给用户确讣 (confirm) 是否需要取 代! |
|
1.3 删除、复制和贴上
|
x, X |
x 为向后删除一个字符 (相当亍 [del] 按键), X 为向 前删除一个字符(相当亍 [backspace] 亦即是退格键) |
|
nx |
n 为数字,连续向后删除 n 个字符 |
|
dd |
删除游标所在的那一整列 |
|
ndd |
删除光标所在的向下 n 列 |
|
d$ |
删除游标所在处,到该行的最后一个字符 |
|
d0 |
删除游标所在处,到该行的最前面一个字符 |
|
yy |
复制游标所在的那一行 |
|
nyy |
复制光标所在的向下 n 列 |
|
y0 、y$ |
同d0,d$ |
|
p,P |
p 为将已复制的数据在光标下一行贴上,P 则为贴在游标上一行! |
|
u |
复原前一个动作。 |
|
[Ctrl]+r |
重做上一个动作。 |
|
这个 u 不 [Ctrl]+r 是很常用的指令!一个是复原,另一个则是重做一次 |
|
|
. |
意思是重复前一个动作 |
二、一般模式切换到编辑模式的可用的按钮说明
|
i,I |
进入插入模式 i 为『从目前光标所在处插入』, I 为『在目前所在行的第一个非空 格符处开始插入』。 |
|
a, A |
迚入插入模式(Insert mode): a 为『从目前光标所在的下一个字符处开始插入』, A 为『从光标 所在行的最后一个字符处开始插入』 |
|
[Esc] |
退出编辑模式,回到一般模式中 |
三、一般模式切换到指令列模式的可用的按钮说明
3.1 指令列的储存、离开等指令
|
:w |
将编辑的数据写入硬盘档案中 |
|
:w! |
若文件属性为『只读』时,强制写入该档案。不过,到底能不能写入, 还 是跟你对该档案的档案权限有关啊! |
|
:q |
离开 vi |
|
:q! |
若曾修改过档案,又不想储存,使用 ! 为强制离开不储存档案。 |
|
:wq |
储存后离开,若为 :wq! 则为强制储存后离开 |
|
ZZ |
若档案没有更动,则不储存离开,若档案已经被更动 过,则储存后离开! |
|
:w [filename] |
将编辑的数据储存成另一个档案(类似另存新档) |
|
:! command |
暂时离开 vi 到指令列模式下执行 command 的显示结果 |
3.2 vim 环境的变更
|
:set nu |
显示行号,设定之后,会在每一行的前缀显示该行的行号 |
|
:set nonu |
不 set nu 相反,为取消行号! |
知识在于积累,整理的world文档放到百度云盘了,需要的小伙伴可以去下载 http://pan.baidu.com/s/1dDZ5xC1
Vim常用命令总结的更多相关文章
- vim常用命令(iOS)
iOS下vim的使用: vim 的三种模式: .一般模式(默认) .插入模式(写文字) .命令行模式(保存) 各种模式的功能区分如下: .一般模式:控制屏幕光标的移动,字符和光标的删除,移动复制某区段 ...
- 实用手册:130+ 提高开发效率的 vim 常用命令
Vim 是从 vi 发展出来的一个文本编辑器.代码补完.编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用.和 Emacs 并列成为类 Unix 系统用户最喜欢的编辑器.这里收录了130+程 ...
- vim常用命令汇总
vim常用命令汇总: http://www.cnblogs.com/softwaretesting/archive/2011/07/12/2104435.html 定位 本行第一个字符 ctrl+$ ...
- [转]vim常用命令
[转]vim常用命令 http://www.cnblogs.com/sunyubo/archive/2010/01/06/2282198.html http://blog.csdn.net/wooin ...
- vim常用命令 vim键盘布局
vim键盘布局,vim快捷键 vim常用命令:
- VI/VIM 常用命令
VI/VIM 常用命令=========== 整理自鸟哥的私房菜 ---------- - 移动光标 命令 | 描述----------------------- ...
- Vim常用命令【转载】
下面基本是vim的基本用法,刚开始学习可能有些不习惯.但贵在坚持,即使不习惯,也要坚持使用,做到不经过思考就能操作,你会发现真的很方便.很多操作可以通过不同的命令达到,我这里只列出常用的. 基础命令 ...
- Linux—vim常用命令
vim常用命令: 1. 键入i进入编辑模式2. esc进入命令模式3. a,进入编辑模式3. b,光标移动到单词前,end,光标移动到行尾4. home光标移动到行首5. cc,删除当前行,并进入编辑 ...
- vim常用命令总结(转)
vim常用命令 -------------------------------------------------------------------------------------------- ...
随机推荐
- [转]SQL Relay使用
一.SQL Relay是什么? SQL Relay是一个开源的数据库池连接代理服务器 二.SQL Relay支持哪些数据库? * Oracle * MySQL * mSQL * PostgreSQL ...
- HTTP简介
HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议.. HT ...
- Razor视图添加命名空间
在.cshtml文件添加@using MyNamespace,只是在页面添加引用这样编译不通过,还需要在view文件夹的web.config添加引用,找到<namespaces>添加< ...
- Xml 序列化
1 XML序列化只能序列化对象的公有属性,并且要求对象有一个无参的构造方法,否者无法反序列化. 2 [Serializable]和[NonSerialized]特性对XML序列化无效!所以使用XML序 ...
- winform 自定义控件引用问题
最近做了一个仿combobox的控件,与combobox类似,多了文字筛选的功能,如何实现在这里不再赘述.由于comboboxEx中用到了另一个用户控件,当生成dll,引用到项目中去时,发现工具栏中不 ...
- GTC China 2016观感
上周二在北京参加了GTC China 2016,最大的感受就是一个字,“冷”!黄教主一如既往坚持机车皮夹克装,9月中旬的北京还没有那么的冷啊,感觉全场的空调简直是为他而开...好的,以上吐槽完毕,接着 ...
- C++学习笔记27:异常处理机制
一.异常处理机制基础 异常的定义 程序中可以检测的运行不正常的情况 异常处理的基本流程 某段程序代码在执行操作时发生特殊情况,引发一个特定的异常 另一段程序代码捕获该异常并处理它 二.异常的引发 th ...
- css中font-size的单位总结:px、em、pt
px:基于像素的单位.像素是一种有用的单位,因为在任何媒体上都可以保证一个像素的差别确实是可见的.em :一般用来测量长度的通用单位(例如元素周转的页边空白和填充),当用于指定字体大小时,em单位是指 ...
- android gradle的全局管理
转自:https://github.com/stormzhang 工程目录下建立baseConfig.gradle文件 内容如下 ext { android = [compileSdkVersion: ...
- js数字时钟
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...