1 查找
/xxx(?xxx)
表示在整篇文檔中搜索匹配xxx的字符串, / 表示向下查找, ? 表示向上查找其中xxx可以是正規表達式,關於正規式就不多說了. 一般來說是區分大小寫的, 要想不區分大小寫, 那得先輸入:set ignorecase 查找到以后, 再輸入 n 查找下一個匹配處, 輸入 N 反方向查找 *(#) 當光標停留在某個單詞上時, 輸入這條命令表示查找與該單詞匹配的下(上)一個單詞 同樣, 再輸入 n 查找下一個匹配處, 輸入 N 反方向查找 g*(g#) 此命令與上條命令相似, 只不過它不完全匹配光標所在處的單詞, 而是匹配包含該單詞的所有字符串 gd 本命令查找與光標所在單詞相匹配的單詞, 並將光標停留在文檔的非注釋段中第一次出現這個單詞的地方 % 本命令查找與光標所在處相匹配的反括號, 包括 () [] { } f(F)x 本命令表示在光標所在行進行查找, 查找光標右(左)方第一個x字符 找到后: 輸入 ; 表示繼續往下找 輸入 , 表示反方向查找
2 快速移動光標
w(e) 移動光標到下一個單詞
b 移動光標到上一個單詞
0 移動光標到本行最開頭 ^ 移動光標到本行最開頭的字符處 $ 移動光標到本行結尾處 H 移動光標到屏幕的首行 M 移動光標到屏幕的中間一行 L 移動光標到屏幕的尾行 gg 移動光標到文檔首行 G 移動光標到文檔尾行 c-f (即 ctrl 鍵與 f 鍵一同按下) 本命令即 page down c-b (即 ctrl 鍵與 b 鍵一同按下, 后同) 本命令即 page up '' 此命令相當有用, 它移動光標到上一個標記處, 比如用 gd, * 等查找到某個單詞后, 再輸入此命令則回到上次停留的位置 ' 此命令相當好使, 它移動光標到上一次的修改行 ` 此命令相當強大, 它移動光標到上一次的修改點
3 拷貝, 刪除與粘貼
在 vi 中 y 表示拷貝, d 表示刪除, p 表示粘貼 其中拷貝與刪除是與光標移動命令結合的, 看幾個例子就能夠明白了
yw 表示拷貝從當前光標到光標所在單詞結尾的內容
dw 表示刪除從當前光標到光標所在單詞結尾的內容
y0 表示拷貝從當前光標到光標所在行首的內容
d0 表示刪除從當前光標到光標所在行首的內容
y$ 表示拷貝從當前光標到光標所在行尾的內容
d$ 表示刪除從當前光標到光標所在行尾的內容
yfa 表示拷貝從當前光標到光標后面的第一個a字符之間的內容
dfa 表示刪除從當前光標到光標后面的第一個a字符之間的內容
特殊地:
yy 表示拷貝光標所在行
dd 表示刪除光標所在行
D 表示刪除從當前光標到光標所在行尾的內容
轉載:原文:http://www.centoscn.cn/2372.html