一、常用到的vim命令

这里只简单记录常用到的命令,后面会有自己记录的命令,但有些可能不常用。

 常规模式:

 gg           跳到文件头
shift+g 跳到文件尾
行数+gg 跳到指定行 如:123gg 跳到123行 或者 支持百分比 50% 跳到一半处 前面可以加数字 代表翻几页
ctrl+f 向前翻一页
ctrl+b 向后翻一页
ctrl+d 向前翻半页
ctrl+u 向后翻半页 u 撤销
ctrl+r 恢复 ctrl+g 显示文件名
1 + ctrl+g 显示文件路径以及名称 dd 剪切当前行(有时也用于 删除当前行)
yy 复制当前行
pp 粘贴当前行
x 单一字符的剪切
yyp 在空行处执行,实现插入一行的效果
o 当前光标处插入,并换行 ZZ 保存后退出
. (英文状态下的点号) 重复上一个命令的操作 命令行模式: 查找 /pattern<Enter> :向下查找pattern匹配字符串
?pattern<Enter>:向上查找pattern匹配字符串 使用了查找命令之后,使用如下两个键快速查找:
n:按照同一方向继续查找
N:按照反方向查找 输入"/":
如:输入 /aaa 查找aaa ?aaa 查找aaa 替换 %s /aaa/bbb/g
全文替换 用bbb替换aaa c,e,i,g
g 不需要确认直接替换,
c 每次的替换都需要你确认,
e 不显示错误,
i 是不分大小写 : %s/\t/\ \ \ \ /g
替换tab 为 4个空格 保存 w 保存
wq 保存退出
q 退出
q! 强制退出
w! 强制保存 set nu/nonu 显示/隐藏行号
set invlist 显示隐藏字符 多窗口操作 sp anotherfile
split 文件名
同时在一个页面显示多个文件的内容,类似多窗口 ctrl+w +方向键 各个窗口切换
:set mouse=a 可用鼠标点击窗口切换 :close
关闭窗口

二、记录的相关命令

 关于vim

 vimdiff file1.txt file2.txt
比较两个文件的异同 vim xxx.php + 到123行 常规模式: gg 跳到文件头
shift+g 跳到文件尾 行数+gg 跳到指定行 如:123gg 跳到123行 或者 支持百分比 % 跳到一半处 前面可以加数字 代表翻几页
ctrl+f 向前翻一页
ctrl+b 向后翻一页
ctrl+d 向前翻半页
ctrl+u 向后翻半页 根据光标所在的位置滚屏
zt 光标所在行移动到窗口顶端
zz ....................中间
zb ....................底部 移动到行首(数字0)
^ 移动到行首的非空字符串
$ 移动到行尾 fx 移动光标到右边第一个'x'字符上 前面都可以加数字 如 :3fx 第三个字符上
Fx ..........左边...............
tx 右边 前
Tx 左边 前 w 移动光标到下一个单词的词首
b 上一个 词首
e 下一个 词尾
ge 上一个 词尾 W 移动光标到下一个字符串的开始
B ..........上一个字符串的开始
E 下一个 结尾
gE 上一个 结尾 u 撤销
ctrl+r 恢复 ctrl+g 显示文件名
+ ctrl+g 显示文件路径以及名称 zc 折叠
zC 对所在范围内所有嵌套的折叠点进行折叠
zo 展开折叠
zO 对所在范围内所有嵌套的折叠点展开 全选正确的答案是:
ggVG
稍微解释一下上面的命令
gg 让光标移到首行,在vim才有效,vi中无效
V 是进入Visual(可视)模式
G 光标移到最后一行
选中内容以后就可以其他的操作了,比如:
d 删除选中内容
y 复制选中内容到0号寄存器
"+y 复制选中内容到+寄存器,也就是系统的剪贴板,供其他程序用 命令模式: .全文替换: %s /aaa/bbb/g 全文替换 用bbb替换aaa c,e,i,g
g 不需要确认直接替换,
c 每次的替换都需要你确认,
e 不显示错误,
i 是不分大小写 .查找 输入"/":
如:输入 /aaa 查找aaa ?aaa 查找aaa /pattern<Enter> :向下查找pattern匹配字符串
?pattern<Enter>:向上查找pattern匹配字符串 使用了查找命令之后,使用如下两个键快速查找:
n:按照同一方向继续查找
N:按照反方向查找 .常用set set cursorline
每行显示下划线 set nu set nonu
显示/隐藏 行号 :set invlist
显示隐藏字符 : %s/\t/\ \ \ \ /g
替换tab 为 4个空格 :sp anotherfile.php
:split 文件名
同时在一个页面显示多个文件的内容,类似多窗口 ctrl+w +方向键 各个窗口切换
:set mouse=a 可用鼠标点击窗口切换 :close
关闭窗口 ctrl + R 搜索命令行窗口中 输入的命令 在vim打开文件后,
ctrl+z 会将一个正在前台执行的命令放在后台并暂停 这时,可运行 jobs命令,查看所有在后台运行的程序
然后 fg number 即可启动相应的程序

三、vim命令图

最后上传一张vim命令相关的图,超级强大

Linux系列笔记 - vim相关记录的更多相关文章

  1. 跟着鸟哥学Linux系列笔记2-第10章VIM学习

    跟着鸟哥学Linux系列笔记0-扫盲之概念 跟着鸟哥学Linux系列笔记0-如何解决问题 跟着鸟哥学Linux系列笔记1 常用的文本编辑器:Emacs, pico, nano, joe, vim VI ...

  2. 跟着鸟哥学Linux系列笔记3-第11章BASH学习

    跟着鸟哥学Linux系列笔记0-扫盲之概念 跟着鸟哥学Linux系列笔记0-如何解决问题 跟着鸟哥学Linux系列笔记1 跟着鸟哥学Linux系列笔记2-第10章VIM学习 认识与学习bash 1. ...

  3. 跟着鸟哥学Linux系列笔记0-如何解决问题

    跟着鸟哥学Linux系列笔记0-扫盲之概念 在发生问题怎么处理: 1.  在自己的主机.网络数据库上查询How-To或FAQ -Linux 自身的文件数据: /usr/share/doc -CLDP中 ...

  4. 跟着鸟哥学Linux系列笔记1

    跟着鸟哥学Linux系列笔记0-扫盲之概念 跟着鸟哥学Linux系列笔记0-如何解决问题 装完linux之后,接下来一步就是进行相关命令的学习了 第五章:首次登录与在线求助man page 1. X ...

  5. 跟着鸟哥学Linux系列笔记0-扫盲之概念

    相关缩写全称: POSIX(Portable Operation System Interface):可携式操作系统接口,重点在于规范内核与应用之间的接口,由IEEE定义发布 IEEE: 美国电气与电 ...

  6. Linux系列笔记 - 用户以及用户组命令

    一.前言 这一系列的随笔笔记,并不是详细的说明的命令的原理,只是简单的记录, 以备后期的查看以及复习 二.直接输入命令问题 有时候,我们在用 useradd groupadd等命令时,直接在终端输入的 ...

  7. Linux学习笔记—vim程序编辑器

    vi和vim vim是vi的升级版,支持vi的所有指令 vi的使用 vi分为三种模式:一般模式.编辑模式.命令行模式 一般模式 以vi打开一个文件就直接进入一般模式了,这个模式下可以使用上下左右按键来 ...

  8. linux学习笔记-wget相关知识

    我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! wget是非交互式的网络文件下载工具,这里参考帮助文档,记录下实用参数和使用方法. 一.wget的实用参数: wget: 用法: ...

  9. linux学习笔记-文件相关知识

    我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! 一.文件属性 在当前用户家目录下以ls -al命令输出为例: -rw-r--r--     1          renren  ...

随机推荐

  1. java时间相减(转载)

    package com.jie.java.phone; import java.text.ParseException; import java.text.SimpleDateFormat; impo ...

  2. win7的svchost.exe占用内存过高如何解决

    方法/步骤 1 在我的电脑上点击鼠标右键,选择[管理] 步骤阅读 2 选择右侧[服务和应用程序]下的[服务]选项 步骤阅读 3 找到名称我Superfetch的服务,双击鼠标左键. 步骤阅读 4 选择 ...

  3. ZOJ3778--一道水题

    Description As we all know, Coach Gao is a talented chef, because he is able to cook M dishes in the ...

  4. Node中的http模块

    通过Node模块,我们可以实现客户端和服务器端.这篇文章主要研究如何利用http和一些相关模块构建客户端和服务器端代码.读完本文,将能够实现client向server发送数据,而server将数据原样 ...

  5. 客户端连接linux经常间隔性断开链接

    起因 在使用SecureCRT通过telnet或SSH访问linux时,总是出现过段时间操作就会断开连接提示重连的问题.起初以为是网络不稳定造成的,但我测试发现在服务器端一直可以ping通客户端IP, ...

  6. C#将Enum枚举映射到文本字符串

    介绍 当将以前的C代码移植到C#中时,我快发疯了,因为有很多的数组需要将常量映射到字符串.当我在寻找一个C#的方法来完成的时候,我发现了一个自定义属性和映射的方法. 如何使用代码? 对每一个enum枚 ...

  7. Antenna Placement poj 3020(匹配)

    http://poj.org/problem?id=3020 题意:给定一个n*m的矩阵,'*'代表城市,现在想要用1*2的矩阵将所有的城市覆盖,问最少需要多少个矩阵? 分析:先为每个城市进行标号,再 ...

  8. Scrum Meeting (Oct. 27 2014)

    软件工程是一门十分有意思的课程,它不仅锻炼了我们开发软件的能力,更是给了我们结队作业的机会,在团队协作中,我们学会了欣赏别人,学会了品鉴自己,学会了如何集思广益凝聚成一个锐意进取的集体.继单人单词查询 ...

  9. 集合与Iterator

    Iterator模式 是遍历集合类的标准访问方法.为的是不暴露类的内部结构,将访问逻辑从集合类中抽象出来. 想循环遍历数组,链表等结构数据,客户端都必须事先知道集合的内部结构,访问代码和集合本身是紧耦 ...

  10. C#winform中调用wpf(转)

    在WinForm中是可以使用WPF中的控件(或者由WPF创建的自定义控件) 1.新建一个winform项目: 2.在解决方案上新建一个wpf项目: 如图: 如果有如下错误,就在winform中的引用添 ...