vim [OPTION]... FILE...

+/PATTERN:打开文件后,直接让光标处于第一个被PATTERN匹配到的行的行首
vim + file 直接打开file,光标在最后一行

三种主要模式:

命令模式:移动光标,剪切粘贴等

插入模式:编辑,修改文本

扩展模式:保存退出等

模式转换:

a       在光标后插入内容

A       在光标所在行末尾插入内容

i        从当前光标前插入内容

I        在光标所在行行首插入内容

o      在当前光标下插入空行

O      在当前光标上插入空行

插入模式-->命令模式   esc

命令模式-->扩展模式   :、?、/

扩展模式-->命令模式   esc

vim的打开与退出:

vim file 若file存在则打开file,若file不存在则新建file

命令模式光标跳转:

字间跳转:

h: 左 、 l: 右 、 j: 下 、 k: 上 (支持上下左右键)

单词间跳转:

w :下一个单词的词首

e :当前或下一单词的词尾

b :当前或前一个单词的词首

行内的跳转:

Home  ^       将光标跳转到本行的行首

End   $          将光标跳转到本行的行尾

0                          跳转到绝对行首

行间的跳转: (#代表任意数字)

1G=gg      跳转到文件的首行

G                跳转到文件的尾行

#G             跳转到文件的#行(命令模式)

:#  跳转到文件的#行(末行模式)

    句间移动:

) :下一句 ( :上一句

段落间移动:

}: 下一段 {:上一段

当前页跳转:

H:页首、 M:页中、 L:页低

翻页移动:

PgDn  Ctrl+f 向下翻一页

PgUp  Ctrl+b 向上翻一页

扩展模式基本操作:

:q      退出

:q!   强制退出

:w     保存

:wq  保存退出 = ZZ = :x

:X      加密

:wq!   强制保存退出

:! 命令    在vim中执行外面命令

:e file        编辑file

:w file       将当前文件另存为file

:r file         读入file文件的内容

$$yyzOv8eO$a0q8BUF80SGcJTy8hx0hy/

:r!openssl passwd -     ##扩展模式使用外面命令生成加密字符串读入到文件中

命令模式字符编辑:

x   删除光标处的字符;

#x  删除光标处起始的# 个字符

xp  交换光标所在处的字符及其后面字符的位置

~   转换大小写

r   替换光标所在处的字符

    R  进入替换模式

d   删除命令,可结合光标跳转字符,实现范围删除;

d$  删除到行尾

d^  删除到非空行首

d0  删除到行首

dd  删除光标所在行

#dd 删除#行

    dG  删到尾行

    dgg 删到首行

yy     复制当前光标所在行,(支持y$、y0、y^等)

#yy   复制当前光标向下#行

p       粘贴

c      修改,(支持y$、y0、y^等)

J        合并当前行和下一行

u       取消最近一次的操作,能多次使用

U      取消当前行所有的操作

ctrl+r        对使用u命令撤销操作进行恢复

.        重复前一个操作

n.      重复前一个操作n次

扩展模式地址定界:

:2,+3            表示2到5行

:.                      点表示当前行

:$                    表示最后一行

:%                   表示全文,相当于1,$

/p1,/p2              第一次被p1匹配到的行到第一次被p2匹配到的行

扩展模式字符串查找:

/world      从上向下查找world

?world 从下向上查找world

n       定位下一个匹配的字串

N      定位上一个匹配的字串

扩展模式字符串替换:

:s/old/new                将当前行中查找到的第一个字符“old” 串替换为“new”

:s/old/new/g             将当前行中查找到的所有字符串“old” 替换为“new”

:#,#s/old/new/g        在行号“#,#”范围内替换所有的字符串“old”为“new”

:%s/old/new/g           在整个文件范围内替换所有的字符串“old”为“new”

:s/old/new/c            在替换命令末尾加入c命令,将对每个替换动作提示用户进行确认

    :%s/^\s*//g    删除行首空格

    :g/^$/d      删除空行

    :5,10s/^/#/g   在5到10行行首插入#号注释 

可视话模式:

  允许选择的文本块,可代替鼠标。突出显示的文字可以被删除,复制,变更,过滤,搜索/替换等

    v面向字符

    V面向行
    ctrl-v 面向块

多文件模式:

vim file1 file2 file3 ...

:next  下一个

:prev  前一个

:first  第一个

:last  最后一个

:wall  保存所有

:qall  退出所有

:wqall

多文件窗口:

vim -o file1 file2 ...

-o    水平分割

-O    垂直分割

窗口间切换:ctrl+w

单文件窗口:

Ctrl+w,s: split,  水平分割

Ctrl+w,v: vertical,  垂直分割

ctrl+w,q :取消相邻窗口

ctrl+w,o: 取消全部窗口

: wqall 退出

定制vim工作特性:

配置文件:

全局:/etc/vimrc

个人:~/.vimrc

1、行号:

永久修改:

在/root/.vimrc文件中添加

set nu

:set nonu 去掉行号

临时显示行号:(扩展模式)

:set nu               显示行号

:set nonu 不显示行号

2、括号成对匹配:

匹配:set sm

取消:set nosm

3、自动缩进:

启用:set ai

禁用:set noai

4、高亮搜索:

启用:set hlsearch

禁用:set nohlsearch

5、语法高亮:

启用:syntax on

禁用:syntax off

6、忽略字符的大小写

启用:set ic

不忽略:set noic

7、文件格式:

启用: fileformat=unix

不忽略:  fileformat=dos

8、设置文本宽度

:set textwidth=65 (vim only)

:set wrapmargin=15

 vim的寄存器:

  有26个命名寄存器和1个无命名寄存器,常存放不同的剪贴版内容,可以不同会话间共享。

  有10个数字寄存器,用0,1,…,9表示,0存放最近复制内容,1存放最近删除内容。当新的文本变更和删除时,1转存到2,2转存到3,以此类推。数字寄存器不能在不同会话间共享。

linux文本编辑器-VIM基本使用方法的更多相关文章

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

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

  2. Linux文本编辑器vim

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

  3. Linux 文本编辑器 vim

    第五讲 文本编辑器 vim

  4. linux文本编辑器vim大全

    linux基础之vim编辑器 1.vim编辑器 基本介绍 vim编辑器的前身叫做vi.vi的英文名:Visual  Interface.中文解释文本编辑器,你不应该用他去打开二进制可执行文件 文本编辑 ...

  5. 10.18.1 linux文本编辑器vim

    vi和vim的区别 编辑一个文本时,vi不会显示颜色,而vim会显示颜色,vi 有点类似windows记事本,简单,那么就是vim复杂编辑器,功能复杂,高亮,自动缩进(写shell/python脚本用 ...

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

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

  7. Linux | 文本编辑器vim

    vim 编辑器介绍 vim 编辑器是一款非常棒的文本处理工具,它会默认安装在当前所有的 Linux 操作系统上面. vim 编辑器中设置了三种模式,可以极大的提高我们的工作效率: 命令模式:控制光标移 ...

  8. linux 文本编辑器 vim 基本操作

    三种模式之间转换: 一般模式 可用于光标移动.复制粘贴.查找替换 "vim.txt"表示文件名 8L 表示8行 , 80C 表示80个字符 移动光标常用操作: h .j. k. l ...

  9. linux文本编辑器vim详解

    vim 1.打开文件 vim [option] - file... 打开文件 +# 打开文件后,让光标处于第#行的行首 +/字符串 打开文件后,光标处于第一个被匹配到字符串的行首 -b file 二进 ...

随机推荐

  1. 网络应用(6):http报文结构与curl的使用

    http是一个协议,协议就是约定.规定,先不管为什么这么约定有什么高深的东西,为了解决具体问题,我们先要能使用协议,理解协议中对我们有用的那部分数据,是的,我们不是研究生,更不是纯研究,所有的研究都要 ...

  2. zoj2901【DP·二进制优化】

    题意: 要排一个L长度的序列,当 j 放在 i 后面的时候会增加v[ i ][ j ]的值,求构成L长度序列的最大值. 思路: 可以想到预处理任意两点<i,j>的最大值是多少,然后题目还有 ...

  3. 3DMAX可编辑多边形常用命令-桥

    桥命令可以连接连个面 下图两个cube(可编辑多边形)已经被附加到一起,选中相对的两个面,点击桥 结果

  4. poj3164(最小树形图&朱刘算法模板)

    题目链接:http://poj.org/problem?id=3164 题意:第一行为n, m,接下来n行为n个点的二维坐标, 再接下来m行每行输入两个数u, v,表点u到点v是单向可达的,求这个有向 ...

  5. duliu——思维+线段树

    题目 [题目描述]小 `D` 喜欢出毒瘤题毒人.当然,他的毒瘤更多体现在若干个难题组合在同一场比赛时.小 `D` 脑中有 $n$ 个毒瘤题 idea,第 $i$ 个的毒值为$d_i$.当第 $i$ 个 ...

  6. IT兄弟连 Java语法教程 Java开发环境 JVM、JRE、JDK

    要想开发Java程序,就需要知道什么是JVM.JRE以及JDK.JVM是运行Java程序的核心,JRE是支持Java程序运行的环境,而JDK是Java开发的核心,下面我们分别具体介绍它们以及它们之间的 ...

  7. 第六章 “我要点爆”微信小程序云开发实例之爆文详情页制作

    爆文详情页制作 从首页中数据列表打开相应详情页面的方法: 给数据列表中每个数据项加一个点击事件,同时将当前数据项的id暂时记录在本地,然后跳转到详情页面detail goopen: function ...

  8. Codeforces 163C(实数环上的差分计数)

    要点 都在注释里了 #include <cstdio> #include <cstring> #include <iostream> #include <al ...

  9. [NWPU2016][寒假作业][正常版第三组]I

    素数环,简单的dfs,但这道题我有个小地方写错了半天发现不了..就是flag数组的位置.一定要放在if里面,刚开始没注意,一不小心写到外面了. #include <iostream> #i ...

  10. 如何使用在Windows 下AspNetCore Api 和 consul

    在Windows 下如何使用 AspNetCore Api 和 consul https://blog.csdn.net/sD7O95O/article/details/80750803 一.概念:什 ...