vim编辑器的常见使用

1、vim介绍

Vim是从 vi 发展出来的一个文本编辑器,处理文本文件功能强大。

三种主要模式:

Vim打开文件,默认命令(Normal)模式,可以移动光标,剪切和粘贴。

按键i 进入插入(Insert)模式,用户可以编辑文本。

扩展(Extended)命令模式(或末行模式)用户:wq可保存退出,或者:q!强制退出。

Exc按键可退出当前模式。


2、文本操作

vim 打开文本文件

        vim +# :打开文件,并定位于第#行

        vim +:打开文件,定位至最后一行

        vim +/PATTERN : 打开文件,定位至第一次被PATTERN匹配到的行的行首

移动光标(编辑模式)

单个移动: h: 左, l: 右, j: 下, k: 上。

       #h: 移动#个字符

w: 移至下一个单词的词首

行内跳转:0: 绝对行首  $: 绝对行尾  ^: 跳转至行首的第一个非空白字符

句间移动:):下一句(:上一句

段落间移动:}:下一段{:上一段

在整个文件里面移动光标

<Ctrl-f>:向下移动一屏。<Ctrl-d>:向下移动半屏。

<Ctrl-b>:向上移动一屏。<Ctrl-u>:向上移动半屏。

G:到文件尾

#G:移动光标到指定的行

gg:到文件首

H:移动光标到屏幕上面

M:移动光标到屏幕中间

L:移动光标到屏幕下面

 

3、搜索

/word:从当前光标处开始搜索字符串 word,按 n移动到下个单词处,N 移动到上一个。

?word:和上面类似,但是是反方向。

4、编辑文本

插入模式

i:在当前字符的左边插入

I:在当前行首插入

a:在当前字符的右边插入

A:在当前行尾插入

o:在当前行下面插入一个新行

O:在当前行上面插入一个新行

删除单个字符

x: 删除光标所在处的单个字符

#x: 删除光标所在处及向后的共#个字符

删除命令:

d$: 删除到行尾

d^:删除到非空行首

d0:删除到行首

dd: 删除当前光标所在行

#dd: 删除包括当前光标所在行在内的#行;

剪切和拷贝

y:拷贝选择的内容到剪贴板。

c:剪贴选择的内容到剪贴板并且进入插入模式。

yy:拷贝当前行。

cc:剪切当前行并且进入插入模式。

D:剪切从光标位置到行尾到剪贴板。

Y:拷贝当前行。

C:和 D 类似,最后进入插入模式。

x:剪切当前字符到剪贴板。

粘贴:p

 

5、Vim多缓冲区编辑

剪贴板在 VIM 里面被称为寄存器(Registers)。你可以列出当前定义的所有寄存器名和它们的内容

比如:我们要拷贝当前行到寄存器 a 或者其他字母。你应该按 “ayy。现在当前行已存在寄存器 a 里面直到你又拷贝了一些东西进入寄存器 a。你可以使用命令 “ap 来粘贴寄存器 a 里面的内容到你想要的位置。

 

6、撤销改变

u:撤消前一次的编辑操作

             连续u命令可撤消此前的n次编辑操作

#u: 直接撤消最近#次编辑操作

撤消最近一次撤消操作:Ctrl+r

7、多文件编辑

vim FILE1 FILE2 FILE3 …

:next 下一个

:prev前一个

:first 第一个

:last 最后一个

:wall 保存所有

:qall退出所有

:wqall 

多文件分割

vim -o|-O FILE1 FILE2 …

-o: 水平分割

-O: 垂直分割

在窗口间切换:Ctrl+w, Arrow

单文件窗口分割:

Ctrl+w,s: split, 水平分割

Ctrl+w,v: vertical, 垂直分割

ctrl+w,q:取消相邻窗口

ctrl+w,o:取消全部窗口

wqall退出

 

8、编辑命令

将当前文件中部分内容另存为另外一个文件

末行模式下使用w命令

:w

:ADDR1,ADDR2w /path/to/somewhere

将另外一个文件的内容填充在当前文件中

:r /path/to/somefile

 

shell交互 :! COMMAND

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

(9)
cuicui
上一篇 2017-07-30
下一篇 2017-07-30

相关推荐

  • Linux系统下的bonding设置

    bonding多个物理网卡聚合成一个虚拟网卡     Bonding,其原理是讲多个物理网卡聚合成一个虚拟网卡,一张网卡正常工作,其余网卡作为备用,每隔一段时间(miimon=毫秒),向正常工作的网卡发一状态询问,若没回复,则认为其运行失败,然后就会启用备用网卡,但是IP地址不会改变。   &nbs…

    Linux干货 2016-09-07
  • M22 使用光盘修复Centos实验初探

    实验目的: 服务器由于文件丢失等原因造成无法启动,可以使用光盘引导启动服务器,然后对服务器进行修复。 实验环境: VMware12安装Centos6.8虚拟机 Centos6.8的光盘镜像 实验原理: 手动删除虚拟机上的rpm程序文件,使用光盘镜像恢复安装rpm程序。 实验过程: 1、     执行命令删除rpm程序,…

    2017-03-06
  • 搭建私有CA服务器

       CA(Certificate Authority)证书颁发机构主要负责证书的颁发、管理以及归档和吊销。证书内包含了拥有证书者的姓名、地址、电子邮件帐号、公钥、证书有效期、发放证书的CA、CA的数字签名等信息。证书主要有三大功能:加密、签名、身份验证。下面来看一下自建CA的过程    一、建立CA服务器 &nbsp…

    Linux干货 2016-03-14
  • 6 文件系统权限(一):用户、组

    提纲 文件系统权限 3A 安全 Authentication    :  认证    –> 用户名&密码、指纹、人脸识别、DNA验证 Authorization    :  …

    Linux干货 2016-08-10
  • 第九周博客作业

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现 #!/bin/bash declare -i sum=0 declare -i sum_nologin=0 for i in $(cut -d: -f7 /etc/passwd);do if…

    Linux干货 2017-06-06
  • 马哥教育网络班22期+第4周课程练习

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。     [root@director2 ~]# cp -a /etc/skel /home/tuser1   &n…

    Linux干货 2016-08-29