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. Oracle数据库恢复之resetlogs

    实验环境:RHEL 5.4 + Oracle 11.2.0.3 如果是一名合格的Oracle DBA,对resetlogs这种关键字都应该是极其敏感的,当确认需要这种操作时一定要三思而后行,如果自己不 ...

  2. c++中调用python脚本提示 error LNK2001: 无法解析的外部符号 __imp_Py_Initialize等错误的解决方法

    最近项目中需要实现一个服务器宕机后短信提醒的功能,个人觉得在使用Python 写http请求这块很方便,发短信这块就使用了python,但是c++程序中调用这个脚本时,编译不通过,提示如下错误: er ...

  3. codeforces757F Team Rocket Rises Again【支配树+倍增+拓扑+spfa】

    先跑spfa求出最短路构成的DAG,然后在DAG上跑出支配树dfs出size取max即可 关于支配树,因为是DAG,支配点就是入点在支配树上的lca,所以一边拓扑一边预处理倍增,然后用倍增求lca # ...

  4. openinstall的免费服务对App推广有哪些帮助?

    想在微信中下载 App,需要“点击右上角打开浏览器”,太麻烦: 想深入查看微信分享内容,需要手动打开 App 搜索,不方便: 想给 App 做推广,Android 需要多个渠道人工打包,效率低: .. ...

  5. Hadoop安装包下载方法

    Hadoop3.0版本的诞生,引入了很多新功能,为了验证Hadoop2.0与3.0版本的性能,需下载Hadoop的不同版本.故下文演示如何下载Hadoop安装包的方法. 1. 进入Apache Had ...

  6. IOS UILabel的一些使用小技巧

    1. 你在iOS6的需要NSLineBreakByWordWrapping 为了您的代码试试这个: NSString *string = @"bla"; CGSize s = [s ...

  7. Spring Cloud Hystrix理解与实践(一):搭建简单监控集群

    前言 在分布式架构中,所谓的断路器模式是指当某个服务发生故障之后,通过断路器的故障监控,向调用方返回一个错误响应,这样就不会使得线程因调用故障服务被长时间占用不释放,避免故障的继续蔓延.Spring ...

  8. atom 插件 python语法验证linter-flake8-------填坑

    python的语法相对于一般语言的语法比较严格.对于刚刚从前端入门python的我来说,有时候代码写完了,然后报错,好多语法错误.所以这个时候一个好的语法验证插件是很好的.linter-flake8这 ...

  9. Windows快捷键应用

    键盘上每个键作用 F1--------------辅助 F3--------------搜索 F4--------------地址 F5--------------刷新 F6------------- ...

  10. 054 Spiral Matrix 旋转打印矩阵

    给出一个 m x n 的矩阵(m 行, n 列),请按照顺时针螺旋顺序返回元素.例如,给出以下矩阵:[ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8, 9 ]]应该返回 [1,2, ...