1、vim编辑器的工作模式

命令模式,插入模式,可视化模式,扩展命令模式。

2、命令模式

2.1、光标定位

hjkl:小键盘上下左右移动

0 $:行头、行尾

gg G:第一行、最后一行

30G:进入第30行

/string:快速定位到某一行

/^d:搜索以d开头的行

/txt$:搜索以txt$结尾的行

2.2、文本编辑

y 复制 yy 3yy ygg yG:复制一行、从当前行往下复制3行,复制当前行至第一行的所有行,复制当前行至最后一行的所有行。

d   删除 dd 3dd dgg dG:同上。

x   删除光标所在的字符

D   从光标处删除到行尾

u   undo撤销

^r  redo

r   修改一个字符

2.3、进入其他模式

i   进入插入模式

o   另起一行,进入插入模式

A   调到行尾,进入插入模式

v  进入可视模式

^v 进入可视块模式

V  进入可视行模式

R  进入替换模式

2.4、插入模式

^p:自动补全

块插入:^v shift+i 插入字符 esc

块替换:ctrl + v 进入块选择,r 输入替换的字符

块删除:选择块,d|x

块复制:选择块,y

2.5、扩展命令模式

保存退出

:10  进入第10行

:w   保存

:q   退出

:q!  强制退出

:wq  保存退出

:w!  强制保存

查找替换

:range s/old/new/option

:1,5 s/ifdown/latiny 将1至5行的第一个ifdown替换成latiny

:5,$ s/ifdown/latiny 将5至最后一行的第一个ifdown替换成latiny

:1,$ s/ifdown/latiny/g 将1至最后一行的所有的ifdown替换成latiny %表示全文,g表示整行

:% s/ifdown/latiny 所有行的第一个ifdown替换成latiny

:,8 s/old/new/  从当前行到第8行

:4,9 s/^#//     4-9行开头的#替换为空

:5,10 s/.*/#&/  5-10行前加入#字符, .*表示整行,&引用查找的内容

读入文件、写文件

:w    存储到当前文件

:w /tmp/2.txt 另存为 /tmp/2.txt

:1,3 w /tmp/2.txt 当前文件1至3行另存为 /tmp/2.txt

:r /etc/hosts  读入文件到当前行后

:5 r /etc/hosts  读入文件到第5行

设置环境 - 临时设置

:set nu  设置行号

:set ic 不区分大小写

:set ai  自动缩进

:set list  显示控制字符

:set nonu  取消设置行号

:set noic  取消不区分大小写

永久修改设置

/etc/vimrc   修改vim环境配置文件

~/.vimrc

set ic

set nu

打开多个文件

vim -O /root/test/directory/a.txt /root/test/directory/b.txt  大写O水平显示两个文件, 小写o垂直显示两个文件

^ww 切换打开的两个文件

vimdiff /root/test/directory/a.txt /root/test/directory/b.txt  查看两个文件的不同。

7 vi 编辑器的更多相关文章

  1. vi编辑器使用

    显示行号 set nu 取消行号 set nonu 定位到某一行 gg 定位到首行 G 定位到最后一行 在VI编辑器中切换调用外部shell命令 :!ifconfig   在编辑过程中,看ip地址 插 ...

  2. vi编辑器命令

    Linux下的文本编辑器有很多种,vi 是最常用的,也是各版本Linux的标配.注意,vi 仅仅是一个文本编辑器,可以给字符着色,可以自动补全,但是不像 Windows 下的 word 有排版功能.v ...

  3. Linux学习之一--VI编辑器的基本使用

    vi编辑器是Linux系统下标准的编辑器.而且不逊色于其他任何最新的编辑器.可是会用的有多少呢.下面介绍一下vi编辑器的简单用法和部分命令.让你在Linux系统中畅行无阻. 基本上vi可以分为三种状态 ...

  4. vi编辑器的常规使用

    1.命令模式(command mode)-执行命令 在该模式中,可以输入命令来执行许多种功能.控制屏幕光标的移动,字符.字或行的删除,移动复制某区段及进入Insert mode下,或者到 last l ...

  5. vi编辑器 使用 命令

    vi编辑器 1)命令模式 打开文件后.默认处于命令模式,命令模式无法编辑文件 2)输入模式 在命令模式下 按 i 进入输入模式,便于编辑文件内容 3)末行模式 编辑内容后,按esc进入到命令模式,再按 ...

  6. Linux 中 Vi 编辑器的简单操作

    Linux 中 Vi 编辑器的简单操作 Vi 编辑器一共有3种模式:命名模式(默认),尾行模式,编辑模式.3种模式彼此需要切换. 一.进入 Vi 编辑器的的命令 vi  filename //打开或新 ...

  7. 第三天 vi编辑器使用和软件安装

    [复习] 判断题: 查看某文件权限为rwxr-xr-- ,则其所属组权限为只读. 对一个目录有w权限,表示可以修改目录下文件内容. 3..tar.gz格式的压缩包可以使用tar -xjf解压缩 4.m ...

  8. linux基础-第九单元 利用vi编辑器创建和编辑正文文件

    vi编辑器简介 什么是vi vi编辑器的操作模式 vi编辑器的3种基本模式 在vi编辑器中光标的移动 移动光标位置的键与光标移动间的关系 进入插入模式 从命令行模式进入插入模式的命令 在命令行模式下删 ...

  9. linux vi编辑器操作手册

    简介 Linux下的文本编辑器有很多种,vi 是最常用的,也是各版本Linux的标配.注意,vi 仅仅是一个文本编辑器,可以给字符着色,可以自动补全,但是不像 Windows 下的 word 有排版功 ...

  10. linux中vi编辑器的使用

    vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本 编辑器,这里只是简单地介绍一下它的用法和一小部分指令.由于对Unix及Linux系统的任 何版本,vi编辑器是完 ...

随机推荐

  1. cpu 100%怎样定位

    先用top定位最耗cpu的java进程 例如: 12430工具:top或者 htop(高级)方法:top -c 显示进程运行详细列表键入 P (大写P),按照cpu进行排序 然后用top -p 124 ...

  2. python 匿名函数lambda使用

    lambda函数语法格式: lambda函数 后面参数可以有一个或多个,冒号后面是python表达式: lambda 参数1,参数2,参数3...:表达式 # 一个参数情况: a = lambda x ...

  3. SQL语句复习【专题六】

    SQL语句复习[专题六] 用户 + 创建表  --创建一个新的用户,然后给新的用户创建一张表,然后给表中添加一些数据.查询表中的数据 --创建用户需要比较大的权限 DBA create user di ...

  4. 04-【servlet转发和重定向】

    转发: //forward(将 数据传给下一个资源(servlet,jsp ,html等 ,把请求和响应的数据和参数设置带过去 ) request.getRequestDispatcher(" ...

  5. Linux基础知识之文件的权限(二)

    除了基本的r,w,x之外,在linux传统的ext2.ext3.ext4文件系统下,还可以设置其他 的文件属性.如chattr,lsattr,而在CentOS7中默认利用xfs作为默认的文件系统,就不 ...

  6. python文件操作:文件处理案例

    储存一个文件,文件上有多个用户名,密码,做一个认证的流程程序,首先创建一个文件,文件上输入多个用户名,及对应的密码,然后让客户输入用户名和密码,进行用户名和密码核对,如果输入正确,则的认证成功,bre ...

  7. DebuggerStepThrough特性(c#)

    单步调试程序时,有一些属性和方法不想进入,可以使用DebuggerStepThrough特性 (1)属性 private string word; public string Word { [Syst ...

  8. python高级特征:列表生成式;generator, 迭代器。

    Python高级特性 列表生成式:不过一种语法糖 生成器:不过一个方法 迭代器: 列表生成式 Python内置的函数,来创建list. 简单的生成: >>> list(range(1 ...

  9. 30秒钟解决MariaDB插入汉字时出现错误

    示例: create table demo( name varchar(10), sex varchar(5) )engine=innoDB default charset=utf8; 表的后面加上指 ...

  10. python面向对象基础(三)内置方法 __xx__

    __str__和__repr__,__format__ 改变对象的字符串显示__str__,__repr__ 自定制格式化字符串__format__ #_*_coding:utf-8_*_ forma ...