文本编辑工具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

相关推荐

  • 文件系统

            文件系统表现为单个统一的层次结构:从目录/开始并通过若干数量的子目录继续向下扩展,/也叫做根目录。这种单一的层次系统和 Windows 的不一样,后者的分区有专门的名字空间。        &n…

    Linux干货 2016-02-28
  • Varnish的配置与部署

          Varnish与一般服务器软件类似,分为master(management)进程和child(worker,主要做cache的工作)进程。master进程读入命令,进行一些初始化,然后fork并监控child进程。child进程分配若干线程进行工作,主要包括一些管理线程和很多woker线程。 va…

    2017-07-27
  • 更改CentOS7 默认网卡eno16777736为eth0

        安装完CentOS7,它的默认网卡名为eno16777736 看着不爽!习惯了eth0的命名方式。 编辑 /etc/sysconfig/grub 在“GRUB_CMDLINE_LINUX”里添加net.ifnames=0 biosdevname=0 保存退出 如图: 然后执行 grub2-mkconfig -o…

    系统运维 2015-12-19
  • Centos6.5基于SSL密码认证部署ELK(Elasticsearch+Logstash+kibana)

    1       简介 本章我们来介绍Centos6.5基于SSL密码认证部署ELK(Elasticsearch 1.4.4+Logstash 1.4.2+kibana3),同时为大家介绍如何集合如上组件来收集日志,本章的日志收集主要为大家介绍SYSTEM日志收集. 集中化日志收集主要应用场景是在同一…

    Linux干货 2015-06-18
  • 第三次 练习

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 ~]# who | cut -d "" -f1 |uniq root     pts/0        2016-11-13 12:17 (172.16.220.14) 2、取出最后登录到…

    Linux干货 2016-11-16
  • OSI参考模型与TCP/IP参考模型的比较

    OSI参考模型与TCP/IP参考模型的比较 OSI参考模型 OSI参考模型是ISO的建议,它是为了使各层上的协议国际标准化而发展起来的。OSI参考模型全称是开放系统互连参考模型(Open System Interconnection Reference Model)。这一参考模型共分为七层:物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。 物理层…

    Linux干货 2017-05-07