Linux之vim的常用方式

vim的三种模式

vim下有三种模式,分别是:

  1. 命令模式
    刚进入vim时的模式,此状态下敲击键盘会被vim识别为命令,而非输入字符。比如此时按下i,并不会输入一个字符,i被当作了一个命令。
    2.插入模式
    当在命令模式下键入一个【i】或者【a】等字符时(后文会详细介绍),就进入插入模式,此时可对文本进行编辑。
  2. 退出模式
    在命令模式下按下【 :q】(后文会详细介绍)等就进入了退出模式。

图示:
在这里插入图片描述

=注意:=
插入模式下不可直接进入退出模式,在插入模式下按键【esc】切换至命令模式时,才可再进入退出模式。

命令模式 (一)

vim工作方式的调整

在vim命令模式下,可输入命令来调整当前vim的工作方式,如是否显示行号等。

命令:

		:set    待调整参数

举例:

		:set  nu                             #文本显示行号
		:set nonu                       #取消显示行号 
		:set  mouse=a                    #显示鼠标
		:set  cursorline                     #每一行显示行线
		:nohl                   #取消高亮显示

图示:
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

=注意:=
在vim程序里设置的工作方式是临时的,vim关闭重启时又会回归至初始默认设置,要想设置永久工作方式,应在 /etc/vimrc 中编辑相应的命令。但编辑时不用加【:】,命令内容不变。

字符的管理

字符的删除 (d)

命令:

dl                               # 删除一个字符
d6l                              #删除6个字母
dw                               #删除1个单词
d3w                              #删除3个单词
dd                               #删除1行
d3d                              #删除3行

图示:

字符的复制 (y)
yl                               #复制一个字母
y3l                              #复制3个字母
yw                               #复制1个单词
y3w                              #复制3个单词
yy                               #复制1行
y3y                              #复制3行


图示:

字符的粘贴与撤销(p和u)
p                               #粘贴
u                               #撤销(撤销上一步操作)
ctrl + r                        #恢复撤销
字符的剪切 (c)
cl                          #剪切1个字母
c3l                         #剪切3个字母
cw                          #剪切1个单词
c3w                         #剪切3个单词
cc                          #剪切1行
c3c                         #剪切3行
 

=注意:
按键【c】时会进入插入模式,在插入模式里,按键【p】代表输入p这一字符,因此若想粘贴时,需要按键【esc】退出插入模式,进入命令模式,再按键【p】粘贴。
图示:
在这里插入图片描述当键入【c4c】时,进入insert模式

字符的搜索
/keyword                            #搜索关键字
n                                   #向下匹配
N                                   #向上匹配


图示:
在这里插入图片描述

字符的替换
:%s/要替换的字符/替换成的字符/g                      # %s 表示所有行  g 表示所有列
:%s/ : /@/g                                        #替换全文的 : 为 @
:10,15s/ sbin /westos /g                           #替换1到5行的sbin为westos
:/adm/,/halt/s/ sbin/westos/g                      #替换adm和halt之间所有行的sbin为westos ,包括adm和halt所在行
:10,13s/ \/ /##/g                                  #替换10到13行的所有 \ 为 ##,其中/为转义字符。表示此时的 / 没有特殊含义,仅仅代表 /。

图示:
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
当替换对象中有特殊字符时,使用#来作为分隔符

在这里插入图片描述

=注意:=

  1. 若不加g 则只会替换所指示行的第一个指定字符,不会替换整行
  2. 在linux中可以用 “ ”来代表引用,即引号内的内容为一个对象。如 touch “fi le”

vim可视化管理



ctrl +v     进入可视化模式,在这个模式下可以选择区域操作

批量添加字符:

  1. ctrl +v (同时按) 进入可视化模式,选中要操作的区域
  2. 按键大写的【I】
  3. 键入需要添加的字符
  4. 按键【esc】

图示:
在这里插入图片描述

vim分屏功能

 ctrl + w            s                                      #上下分屏
 ctrl + w            v                                      #左右分屏
 ctrl + w             c                                      #关闭光标所在屏幕
 ctrl + w           上下左右                                #光标移动至指定屏幕
 :sp   file2                                                # 同时编辑两个文件

图示:

ctrl + w s #上下分屏
在这里插入图片描述
ctrl + w v 左右分屏在这里插入图片描述

:sp file2 同时编辑两个文件

在这里插入图片描述

vim光标的移动

gg             #光标移动到文件的第一行
G              #光标移动到文件最后一行
: 数字         #光标移动到指定行
数字G          #光标移动到指定行

图示:
在这里插入图片描述
当键入【:3】时候,光标移动至第三行

插入模式 (二)

i                            #光标所在位置插入
a                            #光标所在字符的下一个字符插入
s                            # 删除光标所在字符并插入
o                            #光标所在行下一行插入
I                            #光标所在行行首插入
A                             #光标所在行的行尾插入
S                             #删除光标所在行并插入
O                             #光标所在行的上一行插入`

图示:
在这里插入图片描述

退出模式(三)

当输入c4c时,进入插入模式

:q                        #退出,在文件内容没有被改变时使用
:wq                      #退出并保存
:q!                        #强制退出不保存,在改变文件内容但不想保存时使用
:wq!                      # 对于只读文件更改后,退出保存时使用

图示:

在这里插入图片描述在这里插入图片描述
在这里插入图片描述在这里插入图片描述
=注意:=

使用 :wq! 的前提有两个,一个是文件设置了只读,一个是你是文件的所有者或root用户。
比如我新建了一个用户abc,并不是文件所有者,那么我打开vim更改文件后,即使使用【:wq!】也没办法进行强制写入保存,vim会提示【Can’t open file for writing】。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值