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. HTML的学习(注释)

    <!--charset 编码字符集--> <!--UTF-8 万国码 gb2312 中国标准第2312条 中文,韩文....大部分的亚裔语言(繁体字不支持) GBK 在上面的基础之上 ...

  2. SQL 语句外键 a foreign key constraint fails

    queryRunner.update("SET FOREIGN_KEY_CHECKS = 0;"); queryRunner.update(sql, pid); queryRunn ...

  3. 微信小程序开发(二)创建一个小程序页面

    为了方便讲解,我们将上篇博客创建的小程序除了project.config.json和sitemap.json两个文件保留,其他全部删除(这两个文件存的是小程序的创建信息,删掉会有报错提示). 接下来我 ...

  4. Linux基础命令02

    常用的一些命令选项 向网络发送icmp检测主机是否在线 ping 指定发送包数量 ping -c windows系统中是ping -t不间断刷包 比如ping百度,ping不同,一直卡在这里,加了-w ...

  5. java8学习之方法引用详解及默认方法分析

    方法引用: 之前花了很多时间对Lambda表达式进行了深入的学习,接下来开启新的主题---方法引用(Method References),其实在之前的学习中已经使用过了,如: 那方法引用跟Lambda ...

  6. sql 184. 部门工资最高的员工

    Employee 表包含所有员工信息,每个员工有其对应的 Id, salary 和 department Id. +----+-------+--------+--------------+| Id ...

  7. sql 183. 从不订购的客户

    SQL架构 某网站包含两个表,Customers 表和 Orders 表.编写一个 SQL 查询,找出所有从不订购任何东西的客户. Customers 表: +----+-------+ | Id | ...

  8. sysbench0.4.12测试query_cache_size和query_cache_type

    建议: query_cache_size和query_cache_type生产环境中关闭. (1)软件包下载地址: https://dev.mysql.com/downloads/benchmarks ...

  9. Git 团队协作开发

    步骤一:进入别人github中的项目 步骤二: 步骤三: 修改 one.txt 或者 新增 文件 都可以 步骤四: 在提交时,要习惯 使用 git pull 命令,防止有人在你写代码时候,提交过一些东 ...

  10. 配置Multipath多路径环境

    iscsi服务器      eth0:192.168.4.5/24  eth1:192.168.2.5/24 iscsi客户端      eth0:192.168.4.100/24  eth3:201 ...