文本编辑工具vim

                         vim

+#: 打开文件直接处在#

+/PATTERN:打开文件直接处在第一次匹配到行

vim + file :打开文件直接处在最后行

vim b file :以二进制打开文件(只对二进制文件有效。对文本文件无改变)

vim d file1 file2 :同时打开两个文件

vim -m file:以只读模式打开文件

 

vim有三种工作模式:

命令模式(默认)

编辑模式

 

扩展模式(末行模式)

命令模式转化为编辑模式:

i:当前光标处插入

I:当前光标行行首处插入

a:当前光标后处插入

A: 当前光标行行尾处插入

o:当前光标行下一行插入

O: 当前光标行前一行插入

编辑模式转化为命令模式:esc

命令模式转化为扩展模式: 

扩展模式转化为命令模式:esc

编辑模式扩展模式不能相互转化必须通过命令模式

 

vim的保存及退出(扩展模式下):

w:保存

wq:保存并退出

q:退出(只有在没有对文件做更改时可以退出)

q!:强制退出

命令模式下:ZZ:保存退出  ZQ:不保存退出

 

命令模式下跳转:

h:   l:    j:   k:  

w:下一个单词的词首 

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

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

(以上跳转命令可在前面加数值)    

H:当前页页首

M:当前页页中间行

L:当前页页底 

^: 跳转至行首的第一个非空白字符

0: 跳转至行首 

$: 跳转至行尾  

#G、扩展模式:# :跳转至由#指定行 

G:最后一行 

1G, gg: 第一行  

 ):下一句

(:上一句  

 }:下一段

{:上一段

在扩展模式下输入行号可以直接跳转至指定行

Ctrl+f: 向文件尾部翻一屏  

 Ctrl+b: 向文件首部翻一屏  

Ctrl+d: 向文件尾部翻半屏  

Ctrl+u:向文件首部翻半屏

 

ctrl+s :锁定屏幕(锁定屏幕后仍然会接受键盘输入,解锁后显示出来)

ctrl+q:解锁屏幕

 

字符编辑

x:删除光标所在字符

~:将光标所在字符转换大小写

r:替换

R:进入替换模式

 

删除复制粘贴命令

d:删除  p:粘贴(光标后或行后)  y:复制

以上命令可以配合数值或者跳转字符使用

dd删除一行

yy复制一行

D:删除光标至行尾所有字符

P:在光标前或行前粘贴、

#1 i #2 esc  #1复制#2

 

gu转换成小写  gU转换成大写

搜索及替换(扩展模式下)

/# :从上向下搜索#

#:从下向上搜索#

s/#1/#2/:  #1:要替换的内容   #2:替换为的内容

 

u:撤销

ctrl+r:重做

U:撤销光标进入该行后所做的全部修改

 

vim共有26个命名寄存器(a-z)和一个无名寄存器用‘’表示

ps3"tyy表示复制3行到t寄存器中

tp 表示将t寄存器内容粘贴

 

二进制文件:

vim –b可以打开二进制文件

扩展命令模式下,%!xxd可以转换为可读的十六进制

扩展命令模式下, %!xxd –r转换回二进制

 

可视化模式:

v:面向字符的可视化模式

V:面向行的可视化模式

ctrl+v:面向块的可视化模式

 

分屏模式

多文件使用 vim –o 水平分屏

多文件使用 vim –O竖向分屏

单文件水平分屏:Ctrl +w s

单文件竖向分屏:Ctrl +w v

单文件取消相邻分屏:Ctrl +w q

单文件取消全部分屏:Ctrl +w o

 

vim配置文件

全局:/etc/vimrc

个人:~/.vimrc

原创文章,作者:zzzzz1357x1,如若转载,请注明出处:http://www.178linux.com/33437

(0)
zzzzz1357x1zzzzz1357x1
上一篇 2016-08-12
下一篇 2016-08-12

相关推荐

  • 用户与权限管理

    用户与权限管理      昨天学完了用户与权限管理,讲解了用户的运行机制和权限的作用。 用户的产生来源于3A机制:    认证(Authentication):就是验证用户身份的。    授权(Authorization) :验证完身份后,…

    2017-07-27
  • web服务及常见配置

    一次HTTP请求过程1、建立连接:接收或拒绝连接请求2、接收请求:接收客户端请求报文中对某资源的一次请求的过程Web访问响应模型(Web I/O)单进程I/O模型:启动一个进程处理用户请求,而且一次只处理一个,多个请求被串行响应多进程I/O模型:并行启动多个进程,每个进程响应一个连接请求复用I/O结构:启动一个进程,同时响应N个连接请求实现方法:多线程模型和…

    Linux干货 2017-10-09
  • RAID( Blob3 )

    RAID各级别特性及使用

    2017-11-27
  • linux 系统日志管理

         在linux系统上面,系统可以记录从开机到当前系统上面何时发生了那些事情,并将其分类,分级别写到特定的日志文件当中,如系统自身产生的问题,用户登录信息,网络数据信息等等。我们可以根据这些日志信息来解决系统方面的错误,网络服务问题等等。日志对于安全来说,非常重要,它记录了系统每天发生的各种各样的事情,你可以通过它来检查错…

    2017-08-14
  • LVM基本应用,扩展以及缩减的实现

    这是一篇马哥课堂博客作业,这次换个表现方式写,前面先写总体的操作过程,后面显示详情 其实马哥视频讲的非常详尽,听起来特别容易理解,只是让我要写出来那得费九牛二虎之力,估计还得照着视频写。如下仅是看过视频之后的一个操作过程,比较粗糙,仅仅是作业。。。 LVM:logical volume manager version2 逻辑卷管理系统 PV:physical…

    Linux干货 2016-06-28
  • Ansible的常用模块

    command模块: 目的:在指定节点上运行hostname命令 命令:ansible 192.168.1.16 -m command  ‘hostname’copy模块:目的:把主控端/root目录下的a.sh文件拷贝到到指定节点上 命令:ansible 192.168.1.16 -m copy -a ‘src=/roo…

    Linux干货 2017-10-31