Linux文本編輯器vim
Linux下的編輯器最常用的就是vim或者vi文本編輯。vi和vim編輯器的區別是vim是vi的改進版本,在vi編輯器的基礎上上擴展了很多實用的功能。
vim的使用
用vim打開文件: vim [options] [file ..] +#:打開文件之后,直接讓光標處于第#的行首 +/PATTERN:打開文件后,直接讓光標處于第一個被PATTERN匹配到的行的行首
vim的工作模式及模式轉換
vim在工作過程中有三種模式: 1、編輯模式:也叫命令模式(進入編輯器后的默認模式),鍵盤操作常被理解為編輯命令。 2、輸入模式:在文本文件當中進行輸入內容。 3、末行模式:vim內置的命令行接口,可以執行vim的內置命令。 模式轉換: 1、從編輯模式轉換為輸入模式可以使用如下命令: i:insert,在光標所在處輸入 a:append,在光標所在處后方輸入 o:在光標所在處下方打開一個新行 I:在光標所在行的行首輸入 A:在光標所在行的行尾輸入 O:在光標所在處上方打開一個新行 2、從輸入模式轉換為編輯模式:按ESC鍵 3、從編輯模式轉換為末行模式:敲 ":" 即冒號 4、從末行模式轉換為編輯模式:按ESC鍵 注:轉換順序, 輸入-->編輯-->末行; 輸入模式不能直接轉換到末行模式
關閉文件
需要切換到編輯模式后才能退出,在切換為編輯模式后鍵入以下命令即可進行相關操作: :q 退出 :q! 強制退出,不保存此前的編輯操作 :wq 保存并退出 :x 保存并退出 :w /PATH/TO/SOMEFILE 另存為其它路徑 注:編輯模式保存退出的快捷鍵:ZZ
光標跳轉
字符間跳轉: h:左 l:右 j:下 k:上 #COMMAND:跳轉由#指定的個數的字符 單詞間跳轉: w:下一個單詞的詞首 b:當前或前一個單詞的詞首 e:當前或后一個單詞的詞尾 #COMMAND:跳轉由#指定的個數的單詞 行首行尾跳轉: ^:跳轉至行首的第一個非空白字符 0(零):跳轉至行首 $:跳轉至行尾 行間跳轉: #G:跳轉至由#指定的行 1G,gg:跳轉至第一行 G:最后一行 句間跳轉: ):跳到下一句 (:跳到前一段 段間跳轉: }:下一段 {:前一段 翻屏: Ctrl+f:向文件尾部翻一屏 Ctrl+b:想文件首部翻一屏 Ctrl+d:向文件尾部翻半屏 Ctrl+u:想文件首部翻半屏 Eeter:按行向后翻
vim的編輯命令:
字符編輯: x:刪除光標所在處的字符 #x:刪除光標所在處起始的#個字符 xp:交換光標所在處的字符與其后面的字符的位置 替換命令: r:替換光標所在處的字符 刪除命令: d:刪除命令,可結合光標跳轉字符,實現范圍刪除 dd:刪除光標所在處的行 #dd:刪除光標所在處的行起始的共#行 粘貼命令: p:緩沖區中的內容如果為整行,則粘貼在當前光標所在行的下方;否則粘貼在當前光標所在處的后方 P:緩沖區中的內容如果為整行,則粘貼在當前光標所在行的上方;否則粘貼在當前光標所在處的前方 復制命令: y:復制,工作行為相似與d命令 yy:復制一整行 #y:復制從當前行向下#行內容 改變命令(change,c) 編輯模式-->輸入模式,實現刪除操作 cc:刪除光標所在的行,并轉換為輸出模式 可視化模式: v:按字符選定 V:按行選定 通常結合編輯命令; d、c、y使用 撤銷操作: u:撤銷此前的操作; #u:撤銷此前的#個操作 撤銷此前的撤銷: Ctrl+r 重復執行前一個編輯操作: .(按點號)
vim末行模式:內建命令行接口
1、地址定界 :start_pos[,end_pos] #:特定的第#行,例如5即第5行 .:當前行 $:最后一行 %:全文 #,#:指定行范圍,左側為起始行,右側為結束行 #,+#:指定行范圍,左側為起始行絕對編號,右側為相對左側行號的偏移量,例如3,+7 /pattern/:從光標所在處起始向文件尾部第一個被模式多所匹配到的行 /pat1/,/pat2/:從光標所在處起始,第一次有pat1匹配到的行開始,至第一次由pat2匹配到的行結束之間所有行 可同編輯命令一同使用,實現編輯操作 w /PATH/TO/SOMEFILE:將范圍內的文本保存至指定的文件中 r /PATH/FROME/SOMEFILE:將指定的文件中的文本讀取并插入至指定位置 2、查找 /PATTERN:從當前光標所在處想文件尾部查找能夠被當前模式匹配到的所有字符串 ?PATTERN:從當前光標所在處想文件首部查找能夠被當前模式匹配到的所有字符串 3、查找并替換 s:末行模式的命令,使用格式 s/要查找的內容/替換為的內容/修飾符 要查找的內容:可使用正則表達式 替換為的內容:不能使用正則表達式,但可以引用 注:如果“要查找的內容”部分在模式中使用分組符號;在“替換為的內容”中使用后向引用,直接引用查找模式匹配到的全部文本,要使用&符號; 修飾符: i:忽略大小寫 g:全局替換,意味著一行中如果匹配到多次,則均替換 可把分隔符(/)替換為其它非常用字符: s@@@ s###
vim的多文件功能:即一次打開多個文件
用vim打開多個文件: vim FILE1 FILE2 ... 在文件中切換: :next 切換到下一個文件 :prev 切換到上一個文件 :first 切換到第一個文件 :last 切換到最后一個文件 退出所有文件: :wqall 保存所有文件并退出 :wall 保存所有文件 :qall 退出所有文件
vim的多窗口模式
vim可以打開多個文件,亦可多個文件同時顯示: vim [-o|-O] FILE1 FILE2 ... 選項: -o:水平分割窗口 -O:垂直分割窗口 在窗口間切換 ctrl+w+上下左右鍵 注:單個文件也可以分割為多個窗口進行查看 ctrl+w,s:水平分割窗口 ctrl+w,v:垂直分割窗口
定制vim的工作特性
需要在末行模式下設定,但僅對當前vim有效,如需永久有效則需如下設置: 全局: /etc/vimrc 用戶個人:~/.vimsc 窗口屬性定義: 1、行號 顯示:set number,簡寫為 set nu 取消顯示:set nonumber 簡寫為 set nonu 2、括號匹配高亮 匹配:set showmatch,set sm 取消:set nosm 3、自動縮進 啟動:set ai 取消:set noai 4、高亮搜索 啟用:ste hlsearch 取消:ste nohlsearch 5、語法高亮 啟用:syntax on 取消:syntax off 6、忽略字符大小寫 啟用:set ic 取消:set noic
原創文章,作者:641348038@qq.com,如若轉載,請注明出處:http://www.www58058.com/61545
文字描述如果能結合事例加以說明就更好了,加油!