1. 程式人生 > >Vim常用編輯移動命令

Vim常用編輯移動命令


一、開啟檔案、儲存、關閉檔案(vi命令模式下使用)

vi filename       //開啟filename檔案
:w       //儲存檔案
:w vpser.net //儲存至vpser.net檔案
:q          //退出編輯器,如果檔案已修改請使用下面的命令
:q!        //退出編輯器,且不儲存
:wq         //退出編輯器,且儲存檔案

二、插入文字或行(vi命令模式下使用,執行下面命令後將進入插入模式,按ESC鍵可退出插入模式)

a      //在當前游標位置的右邊新增文字
i       //在當前游標位置的左邊新增文字
A     //在當前行的末尾位置新增文字
I      //在當前行的開始處新增文字(非空字元的行首)
O     //在當前行的上面新建一行
o     //在當前行的下面新建一行
R    //替換(覆蓋)當前游標位置及後面的若干文字
J    //合併游標所在行及下一行為一行(依然在命令模式)

三、移動游標(vi命令模式下使用)

1、使用上下左右方向鍵

2、命令模式下:h   向左、j   向下 、k   向上、l  向右。
空格鍵 向右、Backspace  向左、Enter  移動到下一行首、-  移動到上一行首。

四、刪除、恢復字元或行(vi命令模式下使用)

x         //刪除當前字元
nx         //刪除從游標開始的n個字元
dd      //刪除當前行
ndd   //向下刪除當前行在內的n行
u       //撤銷上一步操作
U      //撤銷對當前行的所有操作

五、搜尋(vi命令模式下使用)

/vpser     //向光標下搜尋vpser字串
?vpser     //向光標上搜索vpser字串
n           //向下搜尋前一個搜素動作
N         //向上搜尋前一個搜尋動作

六、跳至指定行(vi命令模式下使用)

n+        //向下跳n行
n-         //向上跳n行
nG        //跳到行號為n的行
G           //跳至檔案的底部

gg或者1G    //移動到檔案頭

w          //游標移動到下一單詞的詞 b           //游標移動到前一單詞的詞首: e           //游標移動到下一單詞的詞尾:e ge        //游標移動到前一單詞的詞尾:ge 0          //移動到當前行第一個字元
^          //移動到當前行的第一個非空字元 $         //移動到當前行的行尾 %          //括號匹配
移動到本行中的指定字元:fc(c就是要找到的這個字元) 向左移動到本行中的指定字元:Fc(c就是要找到的這個字元) 向右移動到本行中的指定字元:tc(c就是要找到的這個字元)
定位到檔案的位置的百分之多少:30%(30就是要定位的比例) 移動到當前這一螢幕的開頭:H(H代表Head的意思) 移動到當前這一螢幕的中間:M(M代表Middle的意思) 移動到當前這一螢幕的末尾:L(L代表Last的意思) 將螢幕向上移動半螢幕:ctrl+U 將螢幕向下移動半螢幕:ctrl+D 向前滾動一螢幕:ctrl+F 反向滾動一螢幕:ctrl+B
將游標所在行滾動到當前螢幕頂部:zt 將游標所在行滾動到當前螢幕底部:zb 將游標所在行滾動到當前螢幕中部:zz



七、設定行號(vi命令模式下使用)

:set  nu     //顯示行號
:set nonu    //取消顯示行號

八、複製、貼上(vi命令模式下使用)

yy    //將當前行復制到快取區,也可以用 "ayy 複製,"a 為緩衝區,a也可以替換為a到z的任意字母,可以完成多個複製任務。
nyy   //將當前行向下n行復制到緩衝區,也可以用 "anyy 複製,"a 為緩衝區,a也可以替換為a到z的任意字母,可以完成多個複製任務。
yw    //複製從游標開始到詞尾的字元。
nyw   //複製從游標開始的n個單詞。
y^      //複製從游標到行首的內容。  VPS偵探
y$      //複製從游標到行尾的內容。
p        //貼上剪下板裡的內容在游標後,如果使用了前面的自定義緩衝區,建議使用"ap 進行貼上。
P        //貼上剪下板裡的內容在游標前,如果使用了前面的自定義緩衝區,建議使用"aP 進行貼上。

撤銷undo上次操作:u
重做redo上次操作:ctrl+R

九、替換(vi命令模式下使用)

:s/old/new      //用new替換行中首次出現的old
:s/old/new/g         //用new替換行中所有的old
:n,m s/old/new/g     //用new替換從n到m行裡所有的old
:%s/old/new/g      //用new替換當前檔案裡所有的old

十、編輯其他檔案

:e otherfilename    //編輯檔名為otherfilename的檔案。

十一、修改檔案格式

:set fileformat=unix   //將檔案修改為unix格式,如win下面的文字檔案在linux下會出現^M。

十二、程式中編輯功能

gd  //轉到變數或者函式的宣告處

[I    //查詢到所有使用該變數在對應檔案中的相關行

Ctrl+n //程式關鍵字補全(在編輯模式下)

=  //手動縮排(例如對整個檔案格式化 gg=G)

: set cindent shiftwidth=2 //設定自動程式縮排

   :set ruler       "任何時候都顯示游標位置。
    :set showcmd     "顯示不完整的命令。
    :set tabstop=4   "tab鍵縮排4格。
    :set number
   //所有使用者的配置檔案為:/etc/vimrc

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

常用的編輯命令

1、VI編輯器的啟動與退出
#vi file1 新建一個文字檔案為file1
~
~
:q! 在末行模式下退出

2、文字的操作
~
:e! file1 在當前檔案下編輯新的檔案
:r /etc/passwd 實現檔案的讀入功能
:wq 保持並退出
:q! 強行退出

3、游標移動操作 3.1、游標移動操作(命令模式下)
h--向左移動游標
l--向右移動游標
k--向上移動游標
j--向下移動游標
3.2、翻頁移動(命令模式下)
Ctril+F向前翻整頁
Ctril+B向後翻整頁
Ctril+U向前翻半頁
Ctril+D向後翻半頁
3.3、行內快速跳轉(命令模式下)
^ 將游標快速跳轉到本行的首行字元
$ 將游標快速跳轉到本行的行尾字元
nw 將游標快速跳轉到當前游標所在位置的後n個單詞的首字母
nb 將游標快速跳轉到當前游標所在位置的前n個單詞的首字母
nc 將游標快速跳轉到當前游標所在位置的後n個單詞的尾字母
3.4、檔案內行間快速跳轉
:set nu 顯示行號
:set nonu 取消顯示行號

4、編輯操作 4.1進入輸入模式(在命令模式下)
i  在當前游標處進入插入狀態
cw 刪除當前游標所在單詞尾部的字元,並進入插入狀態
c$ 刪除當期游標到行尾的字元,並進入插入狀態
c^ 刪除當前游標到行尾的字元,並進入插入狀態
4.2、輸入模式的操作
使用上下左右方向鍵進行游標移動
Home和End  快速定位游標到行首和行尾
Page Up和Page Down 進行文字的上下翻頁
Backspace 刪除游標左側字元
Delect 刪除游標位置的字元
4.3、刪除操作
x 刪除游標處的單個字元
dd 刪除游標所在的行
dw 刪除當前字元到單詞尾的所有字元
d$ 刪除當前字元到行尾的所有字元
d^ 刪除當前字元到行首的所有字元
J 合併當前行和下一行的內容
4.4、撤銷操作
u 取消最近一次的操作
U 取消當前行進行的所有操作
Ctrl+R 對使用u命令撤銷的操作進行恢復
4.5、複製操作
yy 複製當前正行內容到VI緩衝區
yw 複製當前游標到單詞尾部字元的內容到VI緩衝區
y$ 複製當前游標到行尾的內容到VI緩衝區
y^ 複製當前游標到行首的內容到VI緩衝區
:m,ny 複製第m行到第n行之間的文字到VI緩衝區
4.6、貼上操作
p 讀取VI緩衝區到當前游標所在位置
5、查詢和替換操作 5.1、自上而下的查詢操作
:/word 查詢與word匹配的字串
n 查詢下一個匹配的字串
N 反向查詢下一個匹配的字串
5.2、自下而上的查詢操作
?word 查詢與word匹配的字串
n 查詢下一個匹配的字串
N 反向查詢下一個匹配的字串
5.3、替換操作
:s/old/new 替換當前行的第一個字元old為字元new
:s/old/new/g 替換當前行的所有字元old為字元new
:m,ns/old/new/g 替換當前行號m到行號n的所有字元old為字元new
:%s/old/new/g 替換整個文字的所有字元old為字元new
5.7、使用替換的確認功能
:s/old/new/c 替換當前行的第一個字元old為字元new並提示使用者確認操作
:s/old/new/gc 替換當前行的所有字元old為字元new並提示使用者確認操作
:m,ns/old/new/gc 替換當前行號m到行號n的所有字元old為字元new並提示使用者確認操作
:%s/old/new/gc 替換整個文字的所有字元old為字元new並提示使用者確認操作

6、VI編輯器的線上幫助
6.1、安裝VI編輯器的其他軟體包
將RHEL4的第2張安裝光碟放入主機的光碟驅動器,並使用管理員root許可權執行以下命令操作,可安裝VI程式的附加軟體包。
#mount /dev/cdrom /media/cdrom
#cd /media/cdrom/RedHat/RPMS/
#rpm -ivh vim-common-6.3.035-3.i386.rpm vim-enhanced-6.3.035-3.i386.rpm
#cd ~
#umount /media/cdrom /dev/cdrom
:help 檢視VI幫助資訊