vim是從 vi 發展出來的乙個文字編輯器。**補完、編譯及錯誤跳轉等方便程式設計的功能特別豐富,在程式設計師中被廣泛使用。
簡單的來說, vi 是老式的字處理器,不過功能已經很齊全了,但是還是有可以進步的地方。 vim 則可以說是程式開發者的一項很好用的工具
vim鍵盤圖:
基本上vi/vim
共分為三種模式,分別是命令模式(command mode),輸入模式(insert mode)和底線命令模式(last line mode)。 這三種模式的作用分別是:
使用者剛剛啟動 vi/vim,便進入了命令模式。此狀態下敲擊鍵盤動作會被vim識別為命令,而非輸入字元。
常用命令
ctrl + r
重做上個撤銷的動作,類似【ctrl + y】
.
小數點,重複前乙個動作
:
切換到底線命令模式,以在最底一行輸入命令
切換到輸入模式
移動游標
搜尋x
字元刪除/剪下
dd
行刪除/剪下
yy
行複製
p
游標下一行
貼上資料
在命令模式下按下i就進入了輸入模式。
常用命令在命令模式下按下:
(英文冒號)就進入了底線命令模式。
底線命令模式可以輸入單個或多個字元的命令,可用的命令非常多。
常用命令
:q
,離開 vi (常用)
:r [filename]
讀取filename
的內容到游標所在行的下一行
:e [filename]
編輯filename
這個文件
:set nu
或:set number
設定行號
搜尋替換
複製copy
移動move
vim 中批量新增注釋
方法一:塊選擇模式
注釋:
ctrl + v
進入塊選擇模式,然後移動游標選中你要注釋的行,再按大寫的i
進入行首插入模式輸入注釋符號如//
或#
,輸入完畢之後,按兩下esc
,vim 會自動將你選中的所有行首都加上注釋,儲存退出完成注釋。
取消注釋
ctrl + v
進入塊選擇模式,選中你要刪除的行首的注釋符號,注意//
要選中兩個,選好之後按d
即可刪除注釋,esc
儲存退出。
方法二:替換命令
注釋:
取消注釋
例:3,11s /^#\s//g
global命令
global命令是vim最強大的命令之一,將其摸透用熟可以事半功倍
global命令形式
:[range]global//
global
命令在[range]
指定的文字範圍內(預設為整個檔案)查詢
,然後對匹
配到的行執行命令,如果希望對沒匹配上的行執行命令,則使用
global!
或vg lobal
命令。
global
命令實際上是分成兩步執行:
global命令使用
:g/^/m 0
這條命令用行首標記/^
匹配檔案的所有行(這是查詢的乙個常用技巧),然後用move命令依次將每行移到第一行(第0行的下一
行),從而實現了倒序功能。
:g/^/+1 d
這條命令也是匹配所有行,然後隔行刪除(其中+1用以定位於當前行的下一行),為什
麼是隔行呢?因為在對第一行執行+1 d命令時刪除的是第二行,而第二行雖然也被標記
了,但已不存在了,因此不會執行刪除第三行的命令。
:g/^/d|m.
光是:g/^/d
顯然不行,這會刪除所有行,我們需要用move命令把偶數行的標記去掉。
:g/^\s*$/d
^\s*$
,匹配空行,其中^
表示行首,\s
表示空字元,包括空格和製表符,*
重複0到n個前面的字元,$
表示行尾。連起來就是匹配只有空字元的行,也就是空行。
references:
Vim實用命令
命令 功能說明 set nu 顯示行號 set number set nonu 取消顯示行號 set nonumber set ic 大小寫敏感 set ignorecase set noic 忽略大小寫敏感 set noignorecase set hls 高亮查詢 set hlsearch 0 ...
vi實用命令
vi命令太多,外掛程式無數,不過對於日常基本的文字操作,掌握基本命令足以,這裡列出一些我平時用的比較多的命令 1.游標移動相關命令 l0 移到行首 l 移到行尾 l n 跳到相對當前行的後n行 l n 跳到第 n行,注意是在命令模式輸入 n 前面的是只輸入n lng 跳到第n 行,注意 g大寫 lg...
MySQL實用命令
一 連線mysql 1 例1 連線到本機上的mysql 首先在開啟dos視窗,然後進入mysql安裝目錄下的bin目錄下,例如 d mysql bin,再鍵入命令mysql uroot p,回車後提示你輸密碼,如果剛安裝好mysql,超級使用者root是沒有密碼的,故直接回車即可進入到mysql中了...