Vim 文編編輯器
說明:Vim 是 Vi 的增強(qiáng)版藤韵,Ubuntu 默認(rèn)安裝了 Vi ,沒有安裝 Vim腿宰,但使用幾乎一樣。以下使用 Vim來介紹缘厢,最好使用 Vim吃度,因?yàn)?Vi 有點(diǎn)難用
Vim 常用操作
vim 介紹
- vim 是一個(gè)功能強(qiáng)大的全屏幕文本編輯器
- 作用:建立、編輯贴硫、顯示文本文件
- vim 沒有菜單椿每,只有命令
- vim 工作模式
- 進(jìn)入
vi filename
,已有文件夜畴,則進(jìn)入文件命令模式拖刃;沒有,則創(chuàng)建文件贪绘,再進(jìn)入文件命令模式 - 命令模式兑牡,
- 插入模式:使用
i\a\o
進(jìn)入插入模式;使用esc
回到命令模式- i 光標(biāo)前插入
- a 光標(biāo)后插入
- o 換行插入
- 編輯模式:命令以回車結(jié)束\運(yùn)行
- 插入模式:使用
- 退出 税灌,命令模式下輸入命令
wq
退出并保存均函;q!
強(qiáng)制退出(如果:文件使用vi filename
創(chuàng)建,退出沒有保存菱涤,則文件也不會(huì)存在)苞也;w
保存文件
- 進(jìn)入
插入命令
-
在命令模式下輸入插入命令
-
如表
命令 作用 a 光標(biāo)后插入 A 光標(biāo)所在行末尾插入 i 光標(biāo)前插入 I 光標(biāo)所在行首插入 o 光標(biāo)下出入新行 O 光標(biāo)上出入新行
-
定位命令
-
在命令模式下輸入
-
如表
命令 作用 :set number / set nu 設(shè)置行號(hào) :set nonumber / set nonu 取消行號(hào) G / gg 到最后一行 / 到第一行 nG 到第幾行 :n 到第幾行 $ 移至行尾 0 移至行首
-
刪除命令
-
在命令模式下輸入
-
如表
命令 作用 x 刪除光標(biāo)所在處字符 nx 刪除光標(biāo)所在處后 n 個(gè)字符 dd 刪除光標(biāo)所在行,ndd 刪除 n 行 dG 刪除光標(biāo)所在行及到文件末尾內(nèi)容 D 刪除光標(biāo)所在處到行尾內(nèi)容 :n_1,n_2d 刪除指定范圍的行
-
復(fù)制和剪切命令
-
在命令模式下輸入
-
如表
命令 作用 yy 復(fù)制當(dāng)前行 nyy 復(fù)制當(dāng)前行一下的 n 行 dd 剪切當(dāng)前行 ndd 剪切當(dāng)前行一下 n 行 p / P 粘貼在當(dāng)前光標(biāo)行所在行下或行上
-
替換和取消命令
-
在命令模式輸入
-
如表
命令 作用 r 取代光標(biāo)所在字符 R 從光標(biāo)所在處開始替換字符粘秆,按 esc 結(jié)束 u 取消上一步操作
-
搜索和搜索替換命令
-
在命令模式下輸入
-
如表
命令 作用 /string 搜索指定字符串
搜索時(shí)忽略大小寫 :set ic
鍵入 n 表示查看下一個(gè)搜索結(jié)果:%s/old/new/g 全文替換指定字符串(old)
注意轉(zhuǎn)義字符\/
表示/
:n_1,n_2s/old/new/g 在 n_1 到 n_2 行內(nèi)替換
注意轉(zhuǎn)義字符\/
表示/
-
保存和退出命令
-
在命令模式下輸入
-
表格
命令 作用 :w 保存修改 :w new_filename 另存為指定文件 :wq 保存修改并退出 ZZ 快捷鍵如迟,保存修改并退出 :q! 不保存修改退出 :wq! 保存修改并退出(文件所有者及 root 可使用)
-
Vim 使用技巧
說明:一下設(shè)置可以寫入用戶目錄下的 .vimrc
文件寫入配置信息,使用 vim 設(shè)置永久有效
導(dǎo)入命令執(zhí)行結(jié)果 :r !命令
- 介紹
- 將命令執(zhí)行的結(jié)果寫入,使用 vim 編輯器打開的文件
- 實(shí)例
- 使用
cat 文件1
殷勘,將 文件1導(dǎo)入 vim 打開的文件中r !cat 文件1
- 直接使用文件名
:r !文件1
此再,也可以導(dǎo)入文件1內(nèi)容
- 導(dǎo)入當(dāng)前時(shí)間
date
r !date
- 使用
在 vim 中查看命令執(zhí)行結(jié)果 :!命令
-
介紹
- 不需要退出 vim 編輯器玲销,直接使用
:!命令
查看執(zhí)行結(jié)果
- 不需要退出 vim 編輯器玲销,直接使用
-
實(shí)例
-
在 vim 編輯器下输拇,使用
:!ls
ss@localcomputer:~/桌面/test$ vim a a abc 請(qǐng)按 ENTER 或其它命令繼續(xù)
-
定義快捷鍵 :map 快捷鍵 觸發(fā)命令
- 介紹
- 將一個(gè)或多個(gè)命令,使用一個(gè)快捷方式代替
- 實(shí)例
- 使用自定義快捷鍵注釋代碼
- 加注釋:
:map ctrl+y I#<ESC>
使用ctrl+y
代替行首插入I
,插入 #贤斜,按 ESC 鍵退出插入模式 - 解除:
:map ctrl+t 0x<ESC>
使用ctrl+t
代替光標(biāo)移至行首策吠,使用x
刪除光標(biāo)所在處 #,按 ESC 鍵退出插入模式
- 加注釋:
- 可是使用快捷鍵瘩绒,輸入郵箱等一些常用信息
- 插入郵箱:
:map ctrl+y iShenDeZ@163.com
使用ctrl+y
代替進(jìn)入插入模式猴抹,插入郵箱地址
- 插入郵箱:
- 使用自定義快捷鍵注釋代碼
連續(xù)注釋
- 介紹
- 就是多行一起注釋,會(huì)使用正則表達(dá)式
- 實(shí)例
- 以 # 為注釋符的多行注釋
:n_1,n_2s/^/#/g
- 相反
:n_1,n_2s/^#//g
- 以 // 為注釋符的多行注釋
:n_1,n_2s/^/\/\//
- 相反
:n_1,n_2s/^\/\///g
草讶,\
是轉(zhuǎn)義字符
- 在行尾插入相同字符
- 在行尾插入 hello:
:%s/$/hello/g
- 在行尾插入 hello:
- 以 # 為注釋符的多行注釋
替換 ab 替代 原字符集
- 介紹
- 將一段常用字符集洽糟,使用簡(jiǎn)單的幾個(gè)字符代替
- vim 插入時(shí),空格 / 回車堕战,會(huì)有顯示
- 實(shí)例
- 郵箱使用特殊字符代替
-
:ab mail ShenDeZ@163.com
,vim 插入 mail 時(shí)拍霜,會(huì)自動(dòng)轉(zhuǎn)變成ShenDeZ@163.com
-
- 郵箱使用特殊字符代替
分屏
打開文件并且分屏
- 垂直分屏
- 命令
vim -o[n] file1 [file2……]
- n 表示分屏個(gè)數(shù)(可以省略)
- file 表示文件
- 一般使用
vim -o file1 file2
垂直創(chuàng)建或打開兩個(gè)文件 - 如果寫 n嘱丢,但 n 與文件數(shù)相等,會(huì)創(chuàng)建無名文件
- 命令
- 水平分屏
- 命令
vim -O[n] file1 [file2……]
- 命令
Vim命令模式下分屏
說明:也可以新建文件
- 垂直分屏
- 命令
:split [file1]
- 寫 file祠饺,將 file 與當(dāng)前文件垂直分屏
- 不寫 file越驻,將當(dāng)前文件垂直分開,同時(shí)分屏的文件同步
- 命令
:vs [file1]
- 只讀道偷,可還行
- 命令
- 水平分屏
- 命令
:vsplit [file1]
- 命令
:vs [file1]
- 命令
- 新建文件垂直分屏
- 命令
:new [file1]
- 寫 file 會(huì)新建一個(gè)文件
- 不寫 file 會(huì)新建一個(gè)無名文件
- 命令
移動(dòng)光標(biāo)
-
將光標(biāo)移動(dòng)到另一個(gè)屏幕中
-
如表格
光標(biāo)方向 命令 上移 ctrl+w k
下移 ctrl+w j
左移 ctrl+w h
右移 ctrl+w l
移動(dòng)到下一個(gè) ctrl+w w
移動(dòng)上一個(gè) ctrl+w p
-
關(guān)閉分屏
說明:此處使用的命令是在文件名由修改的情況下使用
- 關(guān)閉除當(dāng)期分屏的所有分屏
- 命令
:only
- 分屏有修改不可關(guān)閉
- 命令
- 關(guān)閉所有分屏
- 命令
:qa
- 同樣分屏有修改不可關(guān)閉
- 命令
設(shè)置 vim 分屏
- 當(dāng)前窗口與下一個(gè)對(duì)調(diào)(優(yōu)先上下缀旁,其次左右)
- 命令
ctrl+w x
- 命令
- 所有窗口恢復(fù)均等
- 命令
ctrl+w =
- 命令