Linux之vim篇

目录

一. vim的三种常见模式:

1.1 三个模式之间的转换关系

二. 掌握各个模式下的常用命令

2.1 命令模式下 -----vim常用命令

2.2 输入模式下vim常用命令

2.3 末行模式下vim常用命令


一. vim的三种常见模式:

a. 命令或普通(Normal)模式:默认模式,可以实现移动光标,剪切/粘贴文本,行间跳转,删除,查找等工作。

b. 输入模式:用于修改文本

c. 扩展命令(extended command )或末行模式:保存,退出等搜索替代。

1.1 三个模式之间的转换关系

在每次运行vim编辑器时,默认进入命令模式,此时需要先切换到输入模式后再进行文档编写工作,而每次在编写完文档后需要先返回命令模式,然后再进入到末行模式,执行文档的保存或者退出操作。在vim中,无法直接从输入模式切换到末行模式。

图例:

二. 掌握各个模式下的常用命令

2.1 命令模式下 -----vim常用命令

退出VIM :  

ZZ

保存退出

ZQ

不保存退出

基本操作:

命令

作用

dd

删除(剪切)光标所在的整行。  dw------->删除一个单词

5dd

删除(剪切)从光标处开始的5行。数字根据情况变化

yy

复制光标所在的整行。            yw-----复制一个单词

5yy

复制从光标处开始的5行

n

显示搜索命令定位到的下一个字符串

N

显示搜索命令定位到的上一个字符串

u

撤销上一步的操作

U

撤消光标落在这行后所有此行的更改

Ctrl-r

 重做最后的“撤消”更改,相当于windows中crtl+y

p(小写)

将之前删除(dd)或复制(yy)过的数据粘贴到光标后面/下面

P

将之前删除(dd)或复制(yy)过的数据粘贴到光标前面/上面

x

删除/剪切光标处的字符

单词间跳转

w

下一个单词的词首

e

当前或下一单词的词尾

b

当前或前一个单词的词首

#COMMAND

由#指定一次跳转的单词数

当前页跳转:

H

页首    

M   

页中间行

L

页底

zt

将光标所在当前行移到屏幕顶端

zz

将光标所在当前行移到屏幕中间

zb

将光标所在当前行移到屏幕底端

命令模式翻屏()操作:

Ctrl+f

 向文件尾部翻一屏,相当于Pagedown

Ctrl+b

向文件首部翻一屏,相当于Pageup

Ctrl+d

向文件尾部翻半屏

Ctrl+u

向文件首部翻半屏

删除命令

d

删除命令,可结合光标跳转字符,实现范围删除

d$

删除到行尾

d^

 删除到非空行首

d0

删除到行首

dw

下一个单词的词首

de

当前或下一个单词的词尾

db

当前或上一个单词的词首

dd

剪切光标所在的行      #dd  删除从当前光标开始到第#行

D

从当前光标位置一直删除到行尾,等同于d$

2.2 输入模式下vim常用命令

使 Vim 进行输入模式的方式是在命令模式状态下输入 i、I、a、A、o、O 等插入命令(各指令的具体功能如表 3 所示),当编辑文件完成后按 Esc 键即可返回命令模式。

快捷键

功能描述

i

在当前光标所在位置插入随后输入的文本,光标后的文本相应向右移动

I

行首插入命令

o

在光标所在行的下面插入新的一行。光标停在空行首,等待输入文本

O

在光标所在行的上面插入新的一行。光标停在空行的行首,等待输入文本

a

在当前光标所在位置之后插入随后输入的文本

A

行尾插入命令

2.3 末行模式下vim常用命令

末行模式:文件中的指定内容执行保存、查找或替换等操作。使 Vim 切换到编辑模式的方法是在命令模式状态下按“:”(英文冒号)键,此时 Vim 窗口的左下方出现一个“:”符号,这是就可以输入相关指令进行操作了。

快捷键

功能效果

:q

退出不保存

:q!

强制退出不保存

:w

保存

:w 新文件名

另存为新文件:

:wq :zz :x

保存并退出

:e 其他文件名(如果已修改需要加e!)

打开新文件进行编辑

:r 其他文件名

在当前文件中读入其他文件内容

!命令

执行命令

:r!命令

读入命令

: [替换范围] s /旧的内容/新的内容[/g]

:s /old/new

替换当前行中的第一个old改为new

:s /old/new/g

替换当前行中的所有old改为new

:#,# s /old/new/g

#到#行所有old改为new

:%s /old/new/g

%代表全文 全文替换所有old改为new

# d

删除 第#行

#,# d

删除#到#行

#,# y

复制三到6 行

:set nu 或:set nonu

加行号 不显示行号

:set cul (:set nocul )

光标所在行有下划线(取消)

no hl

取消高亮

:set ai

对齐 回车后和上一行对齐

:set all 可以看所有的一些帮助

可以看所有的一些帮助

set key=password (大X)

加密码

set key=空白

取消密码

set tabstop=4 (set ts=4)

tab 一次为四个空格

.!命令 (who,date )

将date命令插入当前行注意会覆盖当前行

总结,这三个模式下,命令模式与末行模式下的命令较为多样,需要我们多加练习才能更好的加深记忆,勤加练习。

  • 22
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值