Linux中Vim基本用法
vim的常用功能
-
vim的模式分类:
(1) 命令模式:浏览文件,临时更改vim的工作方式,对字符批量处理
(2) 插入模式:对文件内容进行编辑
(3) 退出模式:退出vim程序
-
命令模式
<1> 调整vim的工作方式
在vim程序中
:set 调整参数
:set nu | 在每一行前显示行号 |
---|---|
:set nonu | 取消行号显示 |
:set mouse=a | 显示鼠标 |
:set cursorline | 显示行线 |
:set nocursorline | 取消显示行线 |
示例如下:
:set nu ##行号( 在程序编辑器中显示行号)
:set nonu ##取消行号( 在程序编辑器中不再显示行号)
:set mouse=a ##设定鼠标可用( 在程序编辑器中鼠标可以移动光标)
:set cursorline ##设定行线(当移到某一行时,会在那行有行线)
注意:
(1) 在vim程序中设定的vim工作方式是临时的,在vim关闭后会还源
(2) 如果要永久保存vim的工作方式需要编辑vim的配置文件:/etc/vimrc
<2> 字符的搜索
/关键字 ##n向下匹配,N向上匹配
<3> 字符的管理
(1) 复制:
yl | 复制一个字母 |
---|---|
y3l | 复制3个字母 |
yw | 复制一个单词 |
y3w | 复制3个单词 |
yy | 复制1行 |
y3y | 复制3行 |
(2) 删除:
dl | 删除一个字母 |
---|---|
d3l | 删除3个字母 |
dw | 删除1个单词 |
d3w | 删除3个单词 |
dd | 删除1行 |
d3d | 删除3行 |
(3) 剪切:
cl | 剪切1个字母 |
---|---|
c3l | 剪切3个字母 |
cw | 剪切1个单词 |
c3w | 剪切3个单词 |
cc | 剪切1行 |
c3c | 剪切3行 |
注意:在剪切之后vim会进入插入模式,如果要粘贴需要按【esc】退出插入模式然后按p粘贴
p | 粘贴 |
---|---|
u | 撤销 |
ctrl+r | 恢复撤销 |
<4> vim可视化模式(按esc进入正常模式,再按ctrl+v进入可视模式)
ctrl + v ##在这个模式下可以选择区域操作
批量添加字符:
(1) ctrl + v 选中要加入字符所在的列
(2) 按大写的I
(3) 加入字符
(4) 按【esc】
<5> 字符的替换:
:%s/要替换的字符/替换成的字符/g
:%s/????@/g ##替换全文的:为@
:1,5s/????@/g ##替换1-5行的:为@
示例:把所有的e换成t
注意:
%s标示所有的行
g标示所有的列
<6> vim 的分屏功能(先按ctrl+w,然后放开再按):
ctrl+w s | 上下分屏 |
---|---|
ctrl+w v | 左右分屏 |
ctrl+w c | 关闭光标所在屏幕 |
ctrl+w 上下左右 | 光标移动到指定屏幕 |
:sp file2 | 同时编辑当前文件和file2 |
(1) ctrl +w s ####上下分屏
(2) ctrl + w v ###左右分屏
(3) :sp file2 ####同时编辑当前文件和file2
<7> 在命令模式下光标的移动:
gg | 光标移动到文件的第一行 |
---|---|
G | 光标移动到文件的最后一行 |
:数字 | 光标移动到到指定的行 |
示例:光标移动到第4行
-
插入模式
<1> 插入模式下光标的移动i 光标所在位置插入 I 光标所在行行首插入 o 光标所在行下一行插入 O 光标所在行的上一行插入 a 光标所在字符的下一个字符插入 A 光标所在行的行尾插入 s 光标所在字符删除并插入 S 光标所在行删除并插入 -
vim的退出模式
:q 退出,在文件内容没有被改变时使用 :wq 退出保存 :q! 强制退出不保存,在改变文件后不想保存时使用 :wq! 强制退出保存 在对只读文件编写时使用,注意:所编辑的只读文件必须是当前用户的文件或者当前操作的用户是root.
-
vim三种模式之间的转换
命令模式→插入模式 按【i】
插入模式→命令模式 按【Esc】
命令模式→退出模式 按【:】