三種模式 插入命令 命令 | 作用 | a | 在游標所在字元後插入 A | 在游標所在行尾插入 i | 在游標所在字元前插入 I | 在游標所在行首插入 o | 在游標下插入新行 O | 在游標上插入新行 設置行號 定位首行和末行的行首 跳到指定的行首 在某一行下,移動游標到行首或行尾 刪除命令 ...
三種模式
# 命令模式
vim 文件名
# 插入模式
按a/i/o 進行插入模式
按esc 重新進入命令模式
# 編輯模式
按:(冒號)進入編輯模式
插入命令
命令 | 作用 |
---|---|
a | 在游標所在字元後插入 |
A | 在游標所在行尾插入 |
i | 在游標所在字元前插入 |
I | 在游標所在行首插入 |
o | 在游標下插入新行 |
O | 在游標上插入新行 |
設置行號
前提: 處於編輯模式
# 設置行號
:set nu
# 取消行號
:set nonu
定位首行和末行的行首
前提: 處於命令模式
# 跳到首行的行首
gg
# 跳到末行的行首
G
跳到指定的行首
前提: 處於命令模式
# 跳到第22行的行首
22G
前提: 處於編輯模式
# 跳到第22號行首
:22
在某一行下,移動游標到行首或行尾
前提: 處於命令模式
# 移動到行首
0
# 移動到行尾
$
刪除命令
命令 | 作用 |
---|---|
x | 刪除游標所在處字元 |
nx | 刪除游標所在處後n個字元 |
dd | 刪除游標所在行 |
ndd | 刪除貫標所在處n行 |
dG | 刪除游標所在行到文件末尾內容 |
D | 刪除游標所在行到文件末尾內容 |
:n1,n2d | 刪除指定範圍的行 |
# 刪除999到1006行的內容
前提: 處於編輯模式
:999,1006d
上面的命令刪除了8行,包含999行和1006行
複製和剪切命令
命令 | 作用 |
---|---|
yy | 複製當前行 |
nyy | 複製當前行以下n行 |
dd | 剪切當前行 |
ndd | 剪切當前行以下n行 |
p/P | 粘貼在當前游標所在行下(p)或行上(P) |
替換和取消命令
命令 | 作用 |
---|---|
r | 取代游標所在處字元 |
R | 從游標所在處開始替換字元,按ESC技術 |
u | 取消上一步操作 |
搜索和搜索替換命令
命令 | 作用 |
---|---|
/string | 搜索指定字元串.搜索時忽略大小寫:set ic 搜索時大小寫敏感:set noic |
n | 搜索指定字元串的下一個出下位置 |
:%s/old/new/g | 全文替換指定字元串 |
:n1,n2s/old/new/g | 在一定範圍內替換字元串 |
替換是/g是不詢問確認,/c是詢問確認
保存和退出命令
命令 | 作用 |
---|---|
:W | 保存修改 |
:W new_filename | 另存為指定文件 |
:wq | 保存修改並退出 |
ZZ | 快捷鍵,保存修改並退出 |
:q! | 不保存修改退出 |
:wq! | 保存修改並退出(文件所有者及root可用,強制保存) |