編輯模式(命令模式)
輸入模式
末行模式
i:在當前游標所在字元的前面,轉為輸入模式;
a:在當前游標所在字元的後面,轉為輸入模式;
o:在當前游標所在行的下方,新建一行,並轉為輸入模式;
i:在當前游標所在行的行首,轉換為輸入模式
a:在當前游標所在行的行尾,轉換為輸入模式
o:在當前游標所在行的上方,新建一行,並轉為輸入模式;
vim /path/to/somefile
vim +#:定位游標第#行
vim +:定位游標於檔案最後一行
vim +/pattern:開啟檔案,定位至第一次被pattern匹配到的行首
(1)末行模式關閉檔案:
q:退出
wq:儲存並退出
q!:不儲存退出
w:儲存
w!:強行儲存
x:儲存並退出
(2)編輯模式下退出
zz:儲存並退出
(1)逐字元移動:
h:向左
l:向右
j:向下
k:向上
#h/l/j/k:向左/右/下/上,移動#個字元
(2)以單詞為單位移動
w:移動至下乙個單詞的詞首
b:跳至當前或前乙個單詞的詞首
(3)行內跳**
0:絕對行首
^:行首的第乙個非空白字元
$:絕對行尾
(4)行間跳轉
#g:跳轉至#行
g:跳轉至最後一行
末行模式下,直接給出行號即可
(5)段落間跳轉
或]: 跳轉至當前游標所處段落後
ctrl+f:向下翻一屏
ctrl+b:向上翻一屏
ctrl+d:向下翻半屏
ctrl+u:向上翻半屏
x:刪除游標所在處的單個字元
#x:刪除游標所在處及向後的共#個字元
d命令與跳轉命令組合使用,表示刪除多少字元
#dw,#de,#db
dd:刪除當前游標所在行
#dd:刪除包括當前游標所在行在內的#行;
末行模式下:
startadd,endaddd
如:1,8d:刪除第一行到第八行
.:表示當前行
如:.,100d:刪除當前行到第100行
$:最後一行
如:.,$-3d:刪除當前行到倒數第三行
+#:向下的#行
如:.,+5d:刪除當前行及向下的5行;
p:(大寫p)如果刪除的或複製的為整行內容,則貼上至游標所在行的上方,如果複製或刪除的內容為非整行,則貼上至游標所在字元的前面;
p:(小寫p)如果刪除的或複製的為整行內容,則貼上至游標所在行的下方,如果複製或刪除的內容為非整行,則貼上至游標所在字元的後面;
複製命令y與刪除命令d用法相同
y命令與跳轉命令組合使用,表示複製多少字元
#yw,#ye,#yb
yy:複製當前游標所在行
#yy:複製包括當前游標所在行在內的#行;
末行模式下:
startadd,endaddy
如:1,8y:複製第一行到第八行
.:表示當前行
如:.,100y:複製當前行到第100行
$:最後一行
如:.,$-3y:複製當前行到倒數第三行
+#:向下的#行
如:.,+5y:複製當前行及向下的5行;
c:與刪除命令d相同
r:替換模式(可以替換多個字元)
u:撤銷前一次的編輯操作
連續u命令可撤銷此前的n次編輯操作
#u:直接撤銷最近#次編輯操作
撤銷最近一次撤銷:ctrl+r
v:按字元選取
v:按矩形塊選取
*注:在此模式下,用命令移動游標,游標起始位置和當前位置之間的文字將會以高亮顯示。這時就可以對這些高亮顯示的文字進行整體的操作。例如:在字元視覺化模式中,首先用6l命令選中游標右側的6個字元,然後輸入d命令刪除高亮顯示的文字。
/pattern:從檔案首部到尾部查詢
?pattern:從當前游標到首部查詢
在末行模式下使用s命令
addr1,addr2s@pattern@string@gi:表示在全域性模式下且忽略大小寫,從addr1到addr2查詢pattern並替換成string
1,$:表示從第一行到最後一行
%:表示全文
例:.,$-1s/he/he/g:在全域性模式下,從當前游標所在行到倒數第二行,查詢he並替換成he
用法:vim file1 file2 file3
末行模式下:
next:切換至下乙個檔案
prev:切換至前乙個檔案
last:切換至最後乙個檔案
first:切換至第乙個檔案
退出
qa:全部退出
ctrl+w,s:水平拆分視窗
ctrl+w,v:垂直拆分視窗
在視窗間切換游標:
ctrl+w, arrow鍵
退出:
qa:關閉所有視窗
vim -o:水平分割顯示
vim -o:垂直分割顯示
末行模式下使用w命令
:w用法:addr1,addr2w /path/to/somewhere
用法:r /path/to/somefile:在當前游標所處行的下方,新增另外乙個檔案內容
末行模式下:! command:在末行模式下檢視另外乙個檔案
末行模式下:
1、顯示或取消顯示行號
set nu:顯示行號
set nonu:取消顯示行號
2、顯示忽略或區分字元大小寫
set ic(ignorecase):忽略大小寫
set noic(noignorecase):區分字元大小寫
3、設定自動縮排
set ai(autoindent):設定自動縮排
set noai :取消自動縮排
4、查詢的文字高亮顯示或取消
set hlsearch:查詢的文字高亮顯示
set nohlsearch:查詢的文字取消高亮顯示
5、語法高亮顯示
syntax on:開啟語法高亮功能
syntax off:關閉語法高亮功能
全域性:/etc/vimrc:對所有使用者生效
區域性:~/.vimrc:只對當前使用者生效(如果沒有可以在家目錄下新建該檔案)
Vim編輯器詳解
linux中最常用的就是vi或vim編輯器,而vim編輯器就是vi的加強版。它們提供了乙個視窗裝置,通過它可以編輯檔案。學會了它,處理許多指令碼,檔案將會游刃有餘。編輯模式 命令模式 輸入模式 末行模式 底線命令模式 編輯 輸入 i 在當前游標所在字元的前面,轉為輸入模式 a 在當前游標所在字元的前...
vim編輯器詳解
vi編輯器是所有unix及linux系統下標準的編輯器,他就相當於windows系統中的記事本一樣,它的強大不遜色於任何最新的文字編輯器。他是乙個全屏編輯器,模式化編輯器 vi visual inte ce 視覺化介面 vim vi improved vi的增強版 具有語法著色功能 編輯模式 命令模...
vim 編輯器詳解
vim options path to somefile 預設模式 命令模式,編輯模式 輸入模式 末行模式 模式轉換 編輯模式 輸入模式 i insert,實現在當前游標所在處字元前面轉換為輸入模式 o 實現在當前游標所在行的下方新建乙個空白行並轉換為輸入模式 i 在當前游標所在行的行首轉為輸入模式...