vi命令模式中可用的移動鍵:
h---將光標向左移一個字符
j---將光標向下移一個字符
k---將光標向上移一個字符
l---將光標向右移一個字符
w---將光標向前移一個單詞
b---將光標向后移一個單詞
e---將光標移到下一個單詞之后
0---將光標移到行首
$---將光標移到行末
)---將光標移到下一句句首
(---將光標移到上一句句首
}---將光標移到下一段開始處
{---將光標移到下一段開始處
G---將光標移到當前文檔的底部
^---將光標移到行內非空格的第一個字符
H---將光標移到屏幕上第一行
L---將光標移到屏幕上最后一行
在vi中滾動屏幕:
a然后按回車----將光標所在的那一行移至屏幕頂部
z然后按"-"---將光標所在的那一行移至屏幕底部
z然后按"."---將光標所在的那一行移至屏幕中部
Ctrl+u------向上滾動半屏
Ctrl+d------向下滾動半屏
Ctrl+f------向前滾動全屏
Ctrl+b------向后滾動全屏
Ctrl+e------向下滾動一行
Ctrl+y------向上滾動一行
vi的文本編輯命令:
D------從光標定位的行末刪除文本
dd------行刪除光標定位的當前行
ndd-----n代表即將刪除的行數。例如5dd命令不僅會把當前行刪除,還會把緊隨其后的4行也刪除
rc------c代表字符。光標下方的字符將被替換為r后面的字符
R------R后鍵入的文本將改寫當前文本,從光標所在位置開始,一直到按下Escape返回命令模式為止
S------刪除當前行,并開始在當前的空白行插入文本
x------刪除光標下方的字符,并將字符右移填空
X------刪除光標前的字符,并移動字符,令光標下方的字符來填空
~------更改光標下方的字母的大小寫
J------將當前行和前一行連接起來,并刪除因此而來的空行
vi中的文件操作:
ZZ------保存對當前文件的更改,然后退出vi
:wq-----保存對當前文件的更改,然后退出vi(和ZZ一樣)
:w------保存對當前文件的更改
:w!-----保存對當前文件的更改,如果有同名文件存在的話,就改寫他
:q------退出vi。如果有未保存的更改,vi將發出抱怨,并"拒絕"退出
:q!-----退出vi,即使還有尚未保存的更改。所有未保存的更改將被丟失
:e filename-把指定文件載入vi進行編輯。如果指定文件不存在,將創建一個新文件
:e!-----丟失所有更改,并從硬盤中重載已保存的文件
vi中的查找和替換命令
/pattern--------pattern(樣式)指代的是要查找的內容。vi將在文件中向前查找與指定內容匹配的第一樣式
/-----------重復上一次查找,在文件中查找下一個匹配樣式
?pattern--------pattern(樣式)指代的是要查找的內容。vi將在文件中向后查找與指定內容匹配的第一樣式
?-----------重復上一次查找,在文件中查找與上一次查找內容匹配的樣式
%-----------把當前光標移至匹配的圓括號或方括號。對程序員來說,該命令非常有用
:s/pattern1/pattern2--用pattern2替換當前行中與pattern1匹配的每個內容
:%s/pattern1/pattern2--用pattern2替換整個文件中與pattern1匹配的每個內容
vi中的yank命令
yw-------把光標當前所在的單詞移到緩沖區
y$-------把當前行及其以前的所有文本移到緩沖區
yy-------把當前行整行移到緩沖區
nyy-------n代表打算移到緩沖區的文本的行數。例如5yy將把當前行和緊隨其后的4行移到緩沖區