一、常用到的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. JSTL和EL的区别

    JSTL(JSP Standard Tag Library,JSP标准标签库)是一个不断完善的开放源代码的JSP标签库,是由apache的jakarta小组来维护的.JSTL只能运行在支持JSP1.2 ...

  2. P1159岳麓山上打水

    P1159岳麓山上打水 https://vijos.org/p/1159 dfsID,第一次听说这东西,但是感觉不太靠谱啊. 一开始的时候,想到了排个序后,然后进行dp,如果要输出字典序最小其实还是可 ...

  3. smarty模板原理

    smarty模板原理   模板主要是用来让前端和后端分离的,前台页面只是一个前台页面,后台页面用php代码写逻辑,写完逻辑拿到前台显示. 一.写法 一般需要以下:写3个页面: 1.显示页面aa.htm ...

  4. 初识ASP.NET CORE:一、HTTP pipeline

    完整的http请求在asp.net framework中的处理流程: Asp.Net HttpRequest--> HTTP.exe--> inetinfo.exe(w3wp.exe)-& ...

  5. Highcharts 的实际实践一

    题记: 原先是想用chart.js 这个轻量级来完成我的需求的,结果基于我的数据不规则,所以实现不了. 我的需求: XX后台系统会产生有些报警日志. 我负责把这些数据按照图标的方式来展示. 这写报警日 ...

  6. 第四十二章 微服务CICD(4)- jenkins + gitlab + webhooks + publish-over-ssh(2)

    上一节完成了"当git客户端push代码到gitlab后,jenkins会立即去gitlab拉取代码并构建". 目的:本节完成jenkins自动构建之后,自动的将jar包部署到应用 ...

  7. Andorid开发学习---ubuntu 12.04下搭建超好用的安卓模拟器genymotion 安装卸载virtualbox 4.3

    什么是Genymotion? Genymotion是一套完整的工具,它提供了Android虚拟环境.它简直就是开发者.测试人员.推销者甚至是游戏玩家的福音. Genymotion支持Windows.L ...

  8. ArcGIS删除部分数据后全图范围不正确

      我有一个全国地图的图层,现在删除图层中其他省份,只保留山东省的图形,但是点击全图后,全图范围仍然是全国地图时候的全图范围,使用的版本是ArcGIS9.3,数据存放在9.3的个人数据库中(Perso ...

  9. 使用Coookie实现浏览器显示上次的登录时间

    实现的效果:  每一次刷新 都会显示上一次访问servlet的时间 ,只适用于同一个浏览器 ,更换浏览器再次访问就该使用session技术了, 因为cookie是浏览器端技术,cookie保存在浏览器 ...

  10. GATK使用说明(一)

    1. 官方网址 https://software.broadinstitute.org/gatk/ 2. 下载Latest version: 3.7 3. FileZilla 上传至服务器,解压 ta ...