vim高级用法多年经验原创总结(全部测试成功)

vim高级用法多年经验原创总结(全部测试成功) 
==================================================================================
一、 Linux→命令模式:Vim filename
1.一次移动一个光标
h j k l
左 下 上 右
2.行内移动
0 到行首(d0或d^删除至行首)
$ 至行尾(d$删除至行尾)
0=HOME 到行首
$=end 至行尾
G 到文件尾
50G 到50行
gg 到文件首
3.有小d/大D都是剪切(del word)
dd 剪掉当前行
5dd 剪掉当前行起共5行
D 剪空当前行
x 删除一个字母 
dw 剪除一个单词
4.undo撤消
u 一次撤一行中的一个动作(多行时小u比大U管用)
U 撤消一行中的所有动作 (单行时大U比小u管用) 
5.复制粘贴
yy 复制当前行
5yy 复制5行
p 粘贴(paste)
ZZ 保存退出
ZQ 不保存退出
........................................
6.vim中大小写转化:~或u或U(高级用法)
........................................
a、整篇文章大写转化为小写:gg→guG
gg 到文件首
gu 把选定范围全部小写
G 到文件结束
......................................
b、整篇文章小写转化为大写:gg→gUG
gg 到文件首
gU 把选定范围全部大写
G 到文件结束
c、整篇文章反转(大转小小转大)
ggg~G( )

================================================================================ 
二、 命令模式→输入模式:按ins/a/A/i/I/o/O/r/Ro
1.插入
o 在光标下加一空行并进入插入模式
O 在光标上开一空行并进入插入模式
r 替换一个字符 
R 连续替换多个字符
2.文件内容查找:
/word 从上而下在文件中查找字符串“word” 
?word 从下而上在文件中查找字符串“word”
n 定位下一个匹配的被查找字符串 
N 定位上一个匹配的被查找字符串
3.命令模式→Visual Block:(高级用法)
按ctrl+v,举例:选中多行并添加注释
#vim→ctrl+v→方向箭头选中→I→#→ESC
#vim→set nu→^v→(100G:当前行到第100行)→I→#→ESC
===========================================================================
三、命令模式→末行模式
1.默认情况下Vim的搜索是大小写敏感的,:
:set ignorecase 忽略大小写
:set noignorecase 不忽略大小写
:set nu或:set number 设置显示行号
:set nonu或:set nonumber 不显示行号
:999 移动光标到第999行
2.有彩色或无彩色(高级用法)
:syntax clear或:set syntax=off 暂时关闭语法高亮
:syntax enable 当前缓冲区打开语法高亮功能。
3.保存与退出
:w 存盘不退出
:w! 暴力存盘不退出
:w file1 另存为file1
:q 无脏数据时正常退出
:q! 放弃脏数据并退出
:wq 正常保存并退出
:wq! 暴力存盘并退出
4.文件内容替换(高级用法)
命令 功能
:s /old/new 当前行中找到的第一个old 替换为new
:s /old/new/g 当前行中查找到的所有old 替换为new
:#,# s/old/new/g 行号“#,#”范围内替换所有的old为new
:% s/old/new/g 整个文件范围内替换所有的old为new
:s /old/new/c c命令:将对每个替换动作提示用户进行确认
5.文件加密与解密(高级用法)
------加密
vim t.c 打开文件
:X 据提示操作//加密
: set key=password //加密作用同:X
:wq 保存退出------解密
------解密
vim t.c 打开文件
:set key= 解密
:wq 保存退出
=========================================================================== 
四、典型故障现象(图片见附件)一般是非正常关闭VI导致的,解决办法如下:
#rm .install.log=========================================================================== 
五、查看vim帮助
:help index
1. Insert mode |insert-index|
2. Normal mode |normal-index|
2.1. Text objects |objects|
2.2. Window commands |CTRL-W|
2.3. Square bracket commands |[|
2.4. Commands starting with ‘g‘ |g|
2.5. Commands starting with ‘z‘ |z|
3. Visual mode |visual-index|
4. Command-line editing |ex-edit-index|
5. EX commands |ex-cmd-index|

*****************************************************************************************

时间: 2024-10-15 05:38:39

vim高级用法多年经验原创总结(全部测试成功)的相关文章

GUN sed高级用法,sed脚本编写

这里举一些sed常用的高级用法例子经供参考: 一下操作都针对file.txt文件作修改 [[email protected] ~]# cat file.txt libgcc-4.4.7-4.el6.x86_64 setup-2.8.14-20.el6_4.1.noarch tzdata-2013g-1.el6.noarch jakarta-commons-collections-3.2.1-3.4.el6.noarch filesystem-2.4.30-3.el6.x86_64 mesa-dr

iOS自动布局高级用法及纯手码约束写法

本文主要介绍几个我遇到的总结的高级用法(当然我相信肯定有不少比这还高级的). 简单的storyboard中上下左右约束,固定宽高啥的用法在这里就不做赘述了. autolayout自动布局是iOS6以后出现的,但是在开始的一段时间里大家并不怎么会用,都是一上来先勾掉.之后随着5s,iPhone6的出现屏幕多种多样.用多层if来判断尺寸已经完全hold不住了才开始学习自动布局. 在这之前有个叫自动伸缩的autoresizing属性,这个主要用于一个控件和自己父控件之间的关系.只有autolayout

vi/vim高级命令集粹

vi/vim高级命令集粹 (ctrl +v过来 留着以后看) 1.交换两个字符位置 xp 2.上下两行调换 ddp 3.把文件内容反转 :g/^/m0/ (未通过) 4.上下两行合并 J 5.删除所有行 dG 6.从当前位置删除到行尾 d$ 7.从当前位置复制到行尾 y$ 如果要粘贴到其他地方 p 就可以了 由于vi 是建立在 EX 上的 所以 当键入 : 时就来到了 EX 命令状态 8.:ab string strings 例如 ":ab usa United States of Americ

细说 ASP.NET Cache 及其高级用法

许多做过程序性能优化的人,或者关注过程程序性能的人,应该都使用过各类缓存技术. 而我今天所说的Cache是专指ASP.NET的Cache,我们可以使用HttpRuntime.Cache访问到的那个Cache,而不是其它的缓存技术. 以前我在[我心目中的Asp.net核心对象] 这篇博客中简单地提过它,今天我打算为它写篇专题博客,专门来谈谈它,因为它实在是太重要了.在这篇博客中, 我不仅要介绍它的一些常见用法,还将介绍它的一些高级用法. 在上篇博客[在.net中读写config文件的各种方法] 的

C语言语法笔记 – 高级用法 指针数组 指针的指针 二维数组指针 结构体指针 链表 | IT宅.com

原文:C语言语法笔记 – 高级用法 指针数组 指针的指针 二维数组指针 结构体指针 链表 | IT宅.com C语言语法笔记 – 高级用法 指针数组 指针的指针 二维数组指针 结构体指针 链表 | IT宅.com C语言语法笔记 – 高级用法 指针数组 指针的指针 二维数组指针 结构体指针 链表 本文由 arthinking 发表于315 天前 ⁄ itzhai.com原创文章 ⁄ C语言 ⁄ 评论数 3 ⁄ 被围观 1,775 views+ 指针数组: 在一个数组中,如果它的元素全部都是指针类

细说 ASP.NET Cache 及其高级用法【转】

阅读目录 开始 Cache的基本用途 Cache的定义 Cache常见用法 Cache类的特点 缓存项的过期时间 缓存项的依赖关系 - 依赖其它缓存项 缓存项的依赖关系 - 文件依赖 缓存项的移除优先级 缓存项的移除通知 巧用缓存项的移除通知 实现[延迟操作] 巧用缓存项的移除通知 实现[自动加载配置文件] 文件监视技术的选择 各种缓存方案的共存 许多做过程序性能优化的人,或者关注过程程序性能的人,应该都使用过各类缓存技术. 而我今天所说的Cache是专指ASP.NET的Cache,我们可以使用

ci高级用法篇之扩展核心类

在上一篇文章ci高级用法篇之创建自己的类库中,你是否觉得每个控制器的构造方法都去执行校验代码其实违背了编程规范中的DRY(do'nt repeat yourself)原则呢? 其实我们完全可以把校验的代码在父类的构造函数中.ci中控制器的父类是CI_Controller,现在我们来扩展这个父类. 在application/core目录下创建一个类文件,MY_Controller.php,内容如下: <?php class MY_Controller extends ci_Controller{

RecyclerView之更新UI数据的高级用法

原创文章,转载请注明 ( 来自:http://blog.csdn.net/leejizhou/article/details/51179233 李济洲的博客 ) 如果你还不了解RecyclerView如何去使用,可以参考我的前面几篇博文,再看此篇博文:) RecyclerView的使用(1)之HelloWorld RecyclerView的使用(2)之多Item布局的加载 RecyclerView的使用(3)之添加Header和Footer RecyclerView的使用(4)之下拉刷新和上拉加

sed和awk之sed篇(含sed高级用法)

(原创文章,谢绝转载~) sed(stream editor)和 awk 是linux环境下处理文本.数据的强大"利器",sed对数据列的处理稍逊,awk则更似一门语言,control flow的语法基本和c语言一样,能够处理复杂的逻辑,二者经常配合正则表达式使用.本文简述sed用法. sed对输入流(文本数据)逐行处理,其基本格式为: sed (OPTIONS...) [SCRIPT] [INPUTFILE...]#examplessed '10d' test.txtsed -i '