此处根据需要,只罗列一些常用的指令和用法

五.VIM程序编辑器

Vi与vim

Vi打开文件没有高亮注释,vim有,且vim是vi的高级版本

Vim默认打开文件为命令模式

i                  从光标处进入插入模式

I                 从本行的开头进入插入模式

a                从当前光标的下一个字符进入插入模式

A                从本行的结束进入插入模式

o                从本行的下一行产生空白行进入插入模式

O                从本行的上一行产生空白行进入插入模式

u                在命令模式下为撤回一步,(ctrl+r表示前进)

:                 从命令模式进入冒号模式(shift+:);

/                 从命令模式进查找模式(shift+/)

Esc            从其他模式到命令模式

冒号模式

保存(w)  退出(q)  强退(q!)

s/关键字/替换字/                     替换当前行的第一个关键字为替换字

s/关键字/替换字/g                   替换当前行所有的关键字

3,13s/关键字/替换字/g            将第3行到13行的关键字进行替换(,号表示到)

.,12s/关键字/替换字/g             替换当前行到12行出现的所有关键字(.表示当前行)

.,$-1s/关键字/替换字/g            替换当前行到倒数第二行出现的所有关键字($表示最后一行)

%s/关键字/替换字/g                替换全文出现的关键字(%表示1,$即从第一行到最后一行)

%s/关键字//g                           替换全文出现的关键字为空(即删除全文出现的关键字)

L1,L2s/^/#/g                            在L1行到L2行的行首添加#(^表示行首)

L1,L2s/^#//g                            从L1行到L2行,删除以#开头的#号

Number                                         定位到number行的行首

set number                                   显示行号

set nonuber                                  撤销行号

files                                              查看打开的文件

next                                              切换到打开的下一个文件

N                                                  切换到上一个文件

n                                                   切换到下一个文件

first                                                切换到第一个文件

last                                                切换到最后一个文件

查找模式

关键字                                          高亮全文的关键字

n                                                      表示上一个关键字

N                                                     表示下一个关键字

命令模式

Number+G                                   定位到第number行

G                                                     定位到最后一行

gg                                                   定位到第一行

yy                                                    复制当前行

number+yy                                   复制加上当前行的number行(从当前行开始往后数)

p                                                      粘贴到当前行的下一行

dd                                                   删除当前行(实际为剪切)

number+dd                                  删除从当前行开始的number行(实际为剪切)

r+替换字符                                 替换当前的字符

x                                                      删除当前光标所在的字符

六.VIM的功能

块选择(visual Block)

Ctrl+v                                             进入可视块选择

y                                                      复制选择的块

p                                                      粘贴复制的块

多文件编辑

多窗口操作

进入冒号模式,输入sp

Ctrl+w                                          再按下箭头跳转到下一个窗口

Ctrl+ww                                        切换到另一个窗口

可以在~/.vimrc中添加set命令,进行配置vim(如添加行号)

DOS与Linux的断行字符

unix2dos  -k  -n  file1  file2  将file1转换成dos能够读取的file2文件

-k表示不改变修改时间

Linux学习笔记之VIM编辑器的更多相关文章

  1. Linux学习笔记8——VIM编辑器的使用

    在ubuntu中,敲入命令行:sudo apt-get install vim,然后输入系统密码,确认Y,即可下载vim 按下vim,在后面跟上文件的路径,即可进入文件到编辑模式,如果不存在该文件,将 ...

  2. Linux学习笔记之八————vim编辑器常用命令总结

    <1>从命令行模式到插入模式 i  :在光标前插入 a :在光标后插入 I  :在光标所处在的行的行首 A :在光标所处在的行的末尾 o  :在光标所处在的行的下一行 行首 O :在光标所 ...

  3. Linux学习笔记(四) vi编辑器

    一.vi 编辑器 vi 编辑器 (Visual Interface) 是所有 Unix 及 Linux 系统下标准的编辑器,相当于 Windows 系统中的记事本 它有三种模式,分别是: Comman ...

  4. linux学习笔记:vim程序编辑器—vim的使用

    注:以下是学习<鸟哥的linux私房菜>(第三版)的学习笔记,纯属个人学习记录. 2018-11-19 一.学习vim的原因 很多软件的编辑接口都会主动调用vi 二.vim的使用 (1)v ...

  5. Linux学习Day5:Vim编辑器、配置网卡、配置Yum软件仓库

    今天首先学习Vim编辑器的使用,通过它可以对Linux系统的文件进行编写和修改.在Linux系统中一切都是文件,所以熟练掌握Vim编辑器的使用十分重要.最后通过配置主机网卡的实验,来加深Vim编辑器中 ...

  6. 【Linux学习】Vi / Vim编辑器—编辑器工作模式、vi编辑操作

    Vi / Vim编辑器-编辑器工作模式.vi编辑操作 推荐一个很好的学习指南:http://www.oschina.net/translate/learn-vim-progressively 一.编辑 ...

  7. Linux学习笔记之vim操作指令大全

    0x00 关于Vim Vim是款强大的文本编辑器,但是众多指令需要学习,这次记录了指令大全方便以后翻阅. Vim的几种模式 正常模式:可以使用快捷键命令,或按:输入命令行. 插入模式:可以输入文本,在 ...

  8. Linux学习笔记:vim

    目录 模式 命令模式 编辑模式 底行模式 .vimrc .viminfo .swap 本文更新于2019-09-05. 说明:下文中,使用{}引起表示自定义变量,根据实际情况填写.使用[]引起表示内容 ...

  9. Linux学习笔记13—Vi编辑器的学习

    文本编辑工具vim.vi1. vim与vi的最大区别是vim编辑的时候是带颜色显示的.Vi不带颜色显示.2. yum install -y vim-enhanced 如果没有安装VIM 使用上面的命令 ...

随机推荐

  1. mybatis返回新增对象的主键

    加这两行就可以返回这个插入对象的自增的主键<insert id="insertSeatPortraitData" parameterType="seatPortra ...

  2. Oracle分组函数之CUBE

    功能介绍: 首先是进行无字段的聚合,然后依次对每个字段进行聚合 创建表: 插入测试数据: ROLLUP: Select t.classid,t.studentname,Sum(t.score) Fro ...

  3. 浅谈MySQL优化

    本文整理了一些MySQL的通用优化方法,做个简单的总结分享,旨在帮助那些没有专职MySQL DBA的企业做好基本的优化工作,至于具体的SQL优化,大部分通过加适当的索引即可达到效果,更复杂的就需要具体 ...

  4. input的文件上传类型判断

    参考网址: http://www.helloweba.com/view-blog-224.html <p> <label>请选择一个图像文件:</label> &l ...

  5. prim 模板

    #include<cstdio> #include<vector> #include<cstring> #include<set> #define ma ...

  6. <i>和<em>、<b>和<strong>标签的区别

    在HTML4.01中:< b > < i > 是视觉要素(presentationl elements),分别表示无意义的加粗,无意义的斜体,仅仅表示样式上是粗体或斜体,而没有 ...

  7. 学习日记10、easyui编辑器combobox绑定数据的两种方式

    1.数据本地绑定 var card = [{ "value": "正常", "text": "正常" }, { &quo ...

  8. pom里引入lib下的包后编译报 package com.sun.crypto.provider does not exist问题解决

    最近正在迭代开发的一个项目编译安装时出现报“package com.sun.crypto.provider does not exist”的错误,由于本人能力水平有限,也是第一次遇到该问题,来来回回折 ...

  9. STM32 在串口通信时运用MODBUS协议

    最近一个项目用到了MODBUS协议,就学习了一下,这里做一下记录以免后续忘记. 要用到MODBUS肯定要先知道是MOBUS协议,这里呢我们就又要先理解协议的含义了. 所谓的协议是什么?就是互相之间的约 ...

  10. Vagrant 手册之 Provisioning - 基本用法

    原文地址 虽然 Vagrant 提供了用于配置虚拟机的多个选项,但是有标准用法,好多知识点对这个 provisioner 是通用的. 配置 首先,Vagrantfile 中配置的每个 provisio ...