启动与退出

  • vim只启动vim
  • vim <filename>打开文件,如果不存在则新建

模式

  • Normal:其他模式下按ESC可进入此模式
  • Insert:Normal模式下输入i,I,a,A,o,O,r,R,输入命令时加前缀i_
  • Visual:Normal模式下输入":",输入命令时加前缀i_

进入插入模式

命令 操作
i 在当前字符前插入
I 在当前行首插入
a 在当前字符后插入
A 在当前行末插入
o 在当前行下插入新行
O 在当前行上插入新行

命令

operator [number] motion

删除、复制、粘贴

命令 操作
x 向后删除一个字符(Delete)
X 向前删除一个字符
nx 向后删除n个字符
nX 向前删除n个字符
dd 删除行
ndd 删除n行
dG 删除之后的所有行
d1G 删除之前的所有行
yy 复制当前行
nyy 复制n行
yG 复制之后的所有行
y1G 复制之前的所有行
p 粘贴到下一行
P 粘贴到上一行
u 撤销上一个操作
U 撤销当前行的改动
Ctrl+r 恢复改动(撤销撤销)

光标控制

命令 操作
方向键或kjhl 移动一个字符或一行
w 到下一个词的开头
e 到下一个词的结尾
b 到上一个词,可以加n
Home或0或Shift+6 到行首
End或Shift+4 到行尾
nG(n是数字) 到该文本的第n行
G 到文本的最末行
gg 到该文本的首行
H 到当前屏幕的最顶行
M 到当前屏幕的中央那一行
L 到当前屏幕的最底行
n回车(n是数字) 向下移动n行
n空格(n是数字) 向右移动n个字符
Ctrl+f或PageUp 向前翻页
Ctrl+b或PageDown 向后翻页
Ctrl+d 屏幕向前移动半页
Ctrl+u 屏幕向后移动半页
m[a-z A-Z]
'[a-z A-Z]

查找与替换

命令 操作
/word 向后查找,按n继续搜后一个,Shift+n向前
?word 向前查找,按n继续搜前一个,Shift+n向后
% 查找括号的配对
r 替换当前字符
:s/old/new/g 替换old为new,g表示global
:n1,n2s/word1/word2/g 将n1-n2行间的word1替换为word2,也可以用”#”代替”/”
:1,\(s/word1/word2/g|将第一行到最末行的word1替换为word2 :%s/old/new/g|全文替换 :1,\)s/word1/word2/gc 在替换前需要用户确认

EX模式

命令 操作
:w [filename] 保存
:q 退出
:q! 强制退出,不保存
:x 保存并退出,==wq
:set number 显式行号
:set nonumber 不显示行号
:!系统命令 执行系统命令并显示结果
:sh 切换到命令行,使用ctrl+d返回vim

Linux入门-2 VIM基础的更多相关文章

  1. Linux 入门教程:基础操作 01

    1.1 实验内容 实验楼环境介绍 常用 Shell 命令及快捷键 Linux 使用小技巧 1.2 实验知识点 Linux 基本命令 通配符的使用 查看帮助文档 终端的概念 通常我们在使用 Linux ...

  2. Linux入门篇(四)——Vim的使用与Bash

    这一系列的Linux入门都是本人在<鸟哥的Linux私房菜>的基础上总结的基本内容,主要是记录下自己的学习过程,也方便大家简要的了解 Linux Distribution是Ubuntu而不 ...

  3. Linux入门基础篇

    Linux入门基础篇 Linux诞生 Linux发行版本说明 Linux官方网站 Linux内核官方网站 比较有名的Linux发行版 虚拟机(Virtual Machine),一个虚拟的系统,安装在系 ...

  4. Linux入门基础之一

    Linux 入门基础 一.Linux 系统安装 安装方法网上很多,请自行百度 二.Linux 基本操作 2.1.GNOME图形界面基本操作 操作类似于Windows系统操作 打开每一个文件夹都会打开一 ...

  5. linux入门系列4--vi/vim编辑器

    上一篇文章"linux入门系列3--linux远程登陆工具"讲解了如何使用常用的工具远程连接和管理linux服务器,要管理服务器必然会涉及到脚本文件的创建.编辑工作,因此在介绍命令 ...

  6. Linux入门基础知识

    注:内容系兄弟连Linux教程(百度传课:史上最牛的Linux视频教程)的学习笔记. Linux入门基础知识 1. Unix和Linux发展历史 二者就像父子关系,当然Unix是老爹.1965年,MI ...

  7. Linux入门基础教程之Linux下软件安装

    Linux入门基础教程之Linux下软件安装 一.在线安装: sudo apt-get install 即可安装 如果在安装完后无法用Tab键补全命令,可以执行: source ~/.zshrc AP ...

  8. linux入门基础——linux软件管理RPM

    由于linux入门基础是基于CentOS解说的,讲的是CentOS上的软件包管理.ubuntu的软件包管理有这些:ubuntu软件包管理,包管理指南,ubuntu软件包管理. linux软件管理:RP ...

  9. Linux Capabilities 入门教程:基础实战篇

    该系列文章总共分为三篇: Linux Capabilities 入门教程:概念篇 Linux Capabilities 入门教程:基础实战篇 待续... 上篇文章介绍了 Linux capabilit ...

随机推荐

  1. unity 渲染第二步

    先不要用 unity shader 提供给你的转换矩阵,看看屏幕上的图形,你会学到更多. --- <unity 渲染箴言> 假设你 create 了一个 cube,放在默认的位置,默认的 ...

  2. VS2010,VS2012,VS2015等的自动提示不能默认选中的功能解决办法

    很简单,只需要按 ctrl+alt+space 即可切换. 蛋疼,我到底为什么总会不小心切换过去,而且每次都记不住这个快捷键切换回来...

  3. Kubeadm and Kops

    Kubeadm是Kubernetes官方推出的快速部署Kubernetes的集群工具,其思路是将Kubernetes相关服务容器化以简化部署. With the release of kubeadm ...

  4. 使用git配合idea使用oschina代码仓库初级教程

    http://git.oschina.net/ 这个是开源中国的代码仓库是免费的,可以建100和仓库,私有也是免费的 第一步,创建 oschina代码仓库,这里就忽略了.很简单.去注册一个简单几步就可 ...

  5. Visual Studio中判断项目的类型

    1. 打开项目的属性,查看Application的Output type

  6. Hibernate 多对一映射

    <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE hibernate-mapping PUBL ...

  7. Python基础(3) - 数据类型:1数字类型

    Python数据类型 数据类型 是否容器 是否可变 存储方式 数字 否 否 直接 字符串 否 否 直接 列表 是 是 顺序 元组 是 否 顺序 字典 是 是 映射 数字类型 整  型:1,234,0, ...

  8. React.js 小书 Lesson27 - 实战分析:评论功能(六)

    作者:胡子大哈 原文链接:http://huziketang.com/books/react/lesson27 转载请注明出处,保留原文链接和作者信息. (本文未审核) 删除评论 现在发布评论,评论不 ...

  9. [PY3]——字典排序问题总结—(zip()函数、OrderedDict、itemgetter函数)

    问题 怎样在数据字典中执行一些计算操作(从而实现求最小值.最大值或排序等等)? 如何能根据某个或某几个字典字段来排序一个字典列表? 如何创建一个字典,并且在迭代或序列化这个字典的时候能够控制元素的顺序 ...

  10. C#之RabbitMQ系列(一)

    RabbitMQ–环境搭建 MQ MQ全称为Message Queue, 消息队列(MQ)是一种应用程序对应用程序的通信方法.应用程序通过读写出入队列的消息(针对应用程序的数据)来通信,而无需专用连接 ...