一、什么是vim

vi是一种模式编辑器。vi 是Unix世界里极为普遍的全屏幕文本编辑器,几乎可以说任何一台Unix机器都会提供这套软体,
其他的文本编辑器则不一定会存在,但是目前我们使用比较多的是 vim 编辑器。

vim具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计。

Vim是从vi发展出来的一个文本编辑器。代码补全、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。
简单的来说,vi是老式的字处理器,不过功能已经很齐全了,但是还是有可以进步的地方。vim则可以说是程序开发者的一项很好用的工具。

二、vi/vim的使用

基本上vi/vim共分为三种模式,分别是命令模式(Command mode),输入模式(Insert mode)和底线命令模式(Last line mode)。

1、命令模式

用户刚刚启动vi/vim,便进入了命令模式。
此状态下敲击键盘动作会被Vim识别为命令,而非输入字符。
比如我们此时按下a或者i或者o等等,并不会输入一个字符,而是会被当作一个命令进行处理。

1. 移动光标
w(e)    移动光标到下一个单词
b    移动到光标上一个单词

数字0  移动到本行开头
$    移动光标到本行结尾

H    移动光标到屏幕首行的行首
M    移动到光标到屏幕的中间一行的行首
L     移动光标到屏幕的尾行的行首

gg     移动光标到文档的首行
G    移动光标到文档尾行

nG 移动光标到指定行的行首(n为行数,例如 25G 移动到第25行)
:行号 快速定位到哪一行

Ctrl + f 翻到下一页 (向前翻页) front
Ctrl + b 翻到上一页(向后翻页) back

Ctrl + u 向前翻半页
Ctrl + d 向后翻半页

`.  移动光标到上一次的修改行

2. 查找
/字符串 在整篇文档中搜索 字符串,向下查找,按字母 n 跳到下一个
?字符串 在整篇文档中搜索 字符串,向上查找,按字母 n 跳到上一个

* 查找整个文档,匹配光标所在的所有单词,按下n查找下一处,N上一处
# 查找整个文档,匹配光标所在的所有单词,按下n查找上一处,N下一处

gd 找到光标所在单词匹配的单词,并停留在非注释的第一个匹配上

%     找到括号的另一半!!

:noh 取消查找的内容

3. 复制粘贴
yy 光标在哪一行,输入yy就是复制这一行
p 粘贴yy所复制的内容

7yy 就是复制光标所在行的7行
p 粘贴刚才复制的7行

4. 删除

dd 删除光标所在行
2dd 删除光标所在的2行数据

D 删除当前光标到行尾的内容
dG 删除当前行到文档尾部的内容

x   删除光标所在的字符

5.撤销

u 撤销上一步的操作
Ctrl+r 反撤销

2、输入模式

i: 插入光标前一个字符
I: 插入行首

a: 插入光标后一个字符
A: 插入行未

o: 向下新开一行,插入行首
O: 向上新开一行,插入行首

3、底线命令模式

在命令模式下输入冒号(英文的:),就进入了底线命令模式,
在底线命令模式下可以输入单个或多个字符的命令,常用命令有

:w 将文件内容写入

:q 不保存退出
:q! 不保存强制退出

:x 保存退出
:wq! 强制保存退出

:set number 显示行号
:set nu 显示行号

:set nonu  取消行号

:! command 暂时离开vim指令模式,执行command的结果
例如 :!ip 临时看一下ip信息,然后可以回到vim

4、vim工作模式

5、vim按键

移动光标的方法
h 或 向左箭头键(←) 光标向左移动一个字符
j 或 向下箭头键(↓) 光标向下移动一个字符
k 或 向上箭头键(↑) 光标向上移动一个字符
l 或 向右箭头键(→) 光标向右移动一个字符

向下移动5行      5j
向右移动10字符    10l

n(space)    按下数字n,例如10,然后按下空格,光标会向右移动10个字符

ctrl + n 是自动补齐

vim 编辑器中TAB变4空格
vim /etc/vimrc #打开 vimrc 文件,将以下三行内容添加到文件中

set ts=4

set expandtab

set autoindent

Linux之文本编辑器Vim的更多相关文章

  1. Linux文本文件——文本编辑器Vim

    Linux文本文件——文本编辑器Vim 摘要:本文主要学习在Linux系统中使用Vim文本编辑器编辑文本. 什么是Vim Vim是一个基于文本界面的编辑工具,使用简单且功能强大.更重要的是,Vim是所 ...

  2. 【Linux】文本编辑器Vim常用操作入门

    Linux常用文本编辑器:Vi & Eamcs Vim -- Vi的升级版本 Vim 一.3种工作模式 命令行模式 (Command Mode) 插入模式 (Insert Mode) -- 键 ...

  3. Linux学习总结(19)——Linux中文本编辑器vim特殊使用方法

    1. vim比对功能 在linux的环境下 用于观察两个文件的一致性的时候我们一般用diff这个命令来比对,但是这个命令不能你特别详细的比对出 具体的位置或者行对比.这里就用到了vim的对比功能 vi ...

  4. Linux学习 - 文本编辑器Vim

    一.Vim工作模式 二.命令 插入 a 光标后插入 A 光标所在行尾插入 i 光标前插入 I 光标所在行首插入 o 光标下插入新行 O 光标上插入新行   删除 x 删除光标处字符 nx 删除光标处后 ...

  5. Linux系列教程(十)——Linux文本编辑器vim

    通过前面几篇博客我们终于结束了Linux常用命令的介绍,Linux常用命令主要包括以下: ①.Linux文件和目录处理命令 ②.Linux链接命令和权限管理命令 ③.Linux文件搜索命令 ④.Lin ...

  6. Linux常用命令——文本编辑器Vim

    Linux常用命令--文本编辑器Vim Linux  Vim常用操作 插入命令 a 在光标所在字符后插入 A 在光标所在行尾插入 i 在光标所在字符前插入 I 在光标所在行首插入 o 在光标下插入新行 ...

  7. Linux文本编辑器vim

    目录 1.vim 的工作模式 2.插入命令 3.定位命令 4.删除命令 5.复制和剪切命令 6.替换和取消命令 7.搜索和搜索替换命令 8.保存和退出命令 9.vim 高级操作 10.总结 通过前面几 ...

  8. LINUX文件内容处理及文本编辑器vim

    Linux基本操作命令 echo命令 echo命令: 把echo后面的内容显示到屏幕. -n 显示内容的时候不显示每行结尾的回车 echo 内容 >> 文件名 表示把内容加到一个文件的末尾 ...

  9. Linux基础学习(5)--文本编辑器Vim

    第五章——文本编辑器Vim 一. Vim常用操作 1.Vim简介:              Vim是一个功能强大的全屏幕文本编辑器,是Linux/UNIX上最常用的文本编辑器,它的作用是建立.编辑. ...

随机推荐

  1. 20, CSS 定义选择器

    1. ID 与类 2. 层叠 3. 分组 4. 继承 5. 上下文选择器 6. 子类选择器 7. 其他选择器 8. 结构与注释 20.1 ID 与类 选择器是用于控制页面设计的样式.即 ID 选择器何 ...

  2. vue 获取页面详情后 切换页面时 如何监听用户是否修改过信息

    可以用 beforeRouteLeave 和 updated 来判断.export default { name: 'supplier', components:{cmtWrap,cmtContent ...

  3. Odoo POS会员积分当钱用如何设置?

    问题提问 设定积分规则1元积1分.而后每1积分可以当1分钱用,POS中能处理吗? 解决方案 1) 设定服务类型产品“积分”,其单价为0.01,收入科目为“销售费用” 2) 设定积分计划:积分规则是,订 ...

  4. 使用 Browser-solidity 在 Go-Ethereum1.7.2 上进行简单的智能合约部署

    目录 目录 1.基本概念 1.1.什么是智能合约? 1.2.什么是Solidity? 1.2.1.Solidity的语言特性 1.3.什么是 Browser-solidity? 2.Browser-s ...

  5. Python第七天 函数 函数参数 函数里的变量 函数返回值 多类型传值 函数递归调用 匿名函数 内置函数

    Python第七天   函数  函数参数   函数里的变量   函数返回值  多类型传值     函数递归调用   匿名函数   内置函数 目录 Pycharm使用技巧(转载) Python第一天   ...

  6. Ubuntu下面MySQL的参数文件my.cnf浅析

    前几天刚接手一个MySQL数据,操作系统为Ubuntu 16.04.5 LTS,  数据库版本为5.7.23-0ubuntu0.16.04.1(APT方式安装的MySQL).这个操作系统下的MySQL ...

  7. call、apply的作用和区别是什么?

    call().apply()的区别: 相同点: 1.call()和apply()都可以用来间接调用函数,都可以显式调用所需的this.即,任何函数可以作为任何对象的方法来调用. 2.两个方法都可以指定 ...

  8. Linux shell 及命令汇总

    1 文件管理命令 1.cat命令:将文件内容连接后传送到标准输出或重定向到文件 2.chmod命令:更改文件的访问权限 3.chown命令:更改文件的所有者 4.find命令:查找(符合条件)文件并将 ...

  9. Linux Shell 返回值之 PIPESTATUS

    BASH SHELL中,通常使用 $? 来获取上一条命令的返回码,对于管道中的命令,使用$?只能获取管道中最后一条命令的返回码,例如: 下面的例子 /djdjal/dajiojidksj.file是一 ...

  10. 堡垒机paramiko模块

    paramiko简介: 模拟ssh客户端,使用ssh协议,基于sftp协议等做批量管理.例如处理用ssh登陆一千台机器执行同一个命令,或下载上传文件等需求 基于用户名密码登录执行命令: import ...