文本编辑工具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 09:01
下一篇 2016-08-12 09:01

相关推荐

  • 从Linux小白到大牛——与狼共舞的日子9

    马哥教育网络班21期+第9周课程练习 1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; [root@localhost ~]# cat shell.sh  #!/bin/bash # declare…

    Linux干货 2016-12-05
  • LAMP基于rsyslog+loganalyzer实现日志集中管理及分析

    前言 作为一名运维工程师,查看分析系统日志是每天必做的功课,但每次查看日志都得一台服务器一台服务器的看,几台服务器还可以这么对付,但如果管理成百上千台线上服务器,这种方法就捉襟见肘了。于是我们就需要用到日志服务器了,但是如何能让它更直观的显示呢?loganalyzer是一个不错的选择,本文将讲解如何使用rsyslog+loganalyze实现日志统一管理及分…

    Linux干货 2015-04-27
  • 文本全屏编辑器 vim

             vim在Linux中站着很重要的位置,是每一个学习Linux人员的必须掌握的技能之一,因为vim功能很强大为我们编辑文件和脚本带来了很大的方便。接下来我们来一起了解vim的功能。   文本编辑种类:     行编…

    Linux干货 2016-08-15
  • 链接分析算法之:主题敏感PageRank

      前面的讨论提到。PageRank忽略了主题相关性,导致结果的相关性和主题性降低,对于不同的用户,甚至有很大的差别。例如,当搜索“苹果”时,一个数码爱好者可能是想要看 iphone 的信息,一个果农可能是想看苹果的价格走势和种植技巧,而一个小朋友可能在找苹果的简笔画。理想情况下,应该为每个用户维护一套专用向量,但面对海量用户这种方法显然不可行。所…

    Linux干货 2016-02-17
  • Linux常用命令说明

    个人认为把操作练习打在博客上比较愚蠢,关于操作部分我将以练习题的形式展示,每周固定练习这些基础的题目 Linux常见命令练习 1.文本内容显示 1.1cat: (1)显示/root下adjtime文件内容 (2)把文件mm.txt的文件内容加上行号输入到textfile2文件中 (3)把文件mm.txt和textfile2的文件内容加上行号(空白行不加)之后…

    Linux干货 2016-10-29
  • LINUX-初学正则表达式

    正则表达式    简介       REGEXP:由一类特殊字符及文本字符由一类特殊字符及文本字符所编写的模式,其中有些字符(元字符)                    不表示字符字面意义,而表示控制或通配…

    2017-06-04