CentOS下VIM實用基本操作技巧詳解

文本編輯器有很多,圖形模式下有g(shù)edit、kwrite等編輯器,文本模式下的編輯器有vi、vim(vi的增強版本)和nano。vi和vim是Linux系統(tǒng)中最常用的編輯器。有人曾這樣的說過在世界上有三種人:一種是使用Vi的,另一種是使用是Emacs的,剩下的是第三種人。
(一)初級個性化配置你的vim
1、vim是什么?
vim是Vi IMproved,是編輯器Vi的一個加強版,一個極其強大并符合IT工程師(程序員、運維)習(xí)慣的編輯器。如果你是一名職業(yè)的SE,那么一定在尋找一款出色的能夠自由定制、滿足靈活編輯功能的編輯器。那么答案,就是vim或者Emacs。
2、配置文件在哪?
Windows系統(tǒng)的配置文件是vim安裝目錄下的vimrc文件。
Linux系統(tǒng),RHEL和CentOS的配置文件是/etc/vimrc,Debian和Ubuntu的配置文件是/usr/share/vim/vimrc。
Mac OS X的配置文件是/usr/share/vim/vimrc。
3、vimRC中的RC是什么意思?
為什么把這么個沒有意義的問題也列出來?原因很簡單,就是我在接觸vim之初第二個想問的問題就是這個(第一個就是上面的“1”)。一般在運行某個軟件、環(huán)境或工具之初,要初始執(zhí)行的一些命令,稱為Run Commands,即RC。根據(jù)Wikipedia.org的記載,RC縮寫的用法源自MIT的相容分時操作系統(tǒng)(Compatible Time-Sharing System,CTSS)[參考1]。所以以后如果你看到了SystemRC或者ScreenRC,也就知其緣由了。
4、三種基本模式
在《大家來學(xué)vim》中提到vim有6+5種模式,但除了細分程度不同外,實際上常用的只有3種模式:Normal Mode、Insert Mode和Command-line Mode。
從Normal Mode進入Insert Mode,可以按i、I、a、A、o、O、r、R即可。其中i和I表示插入(Insert),r和R表示替換(replace)。
從Insert Mode進入Normal Mode,只需要按ESC鍵即可。
從Normal Mode進入Command-line Mode,可以按“:”、“/”、“?”。其中“:”表示輸入vim命令,“/”表示后面輸入要向下搜索的字符串,“?”表示后面輸入要向上搜索字符串。
從Command-line Mode進入Normal Mode,只需要按ESC鍵即可了。
你可以把Normal Mode理解為常態(tài),進入其他任何一種模式,需要某種特殊方式,而從其他特殊模式回到Normal Mode,就按ESC鍵即可。
5、vim中那些最最常用的配置
當(dāng)你嘗試去google一些其他人的vimrc配置時,你一定會找到一篇叫做《The ultimate vim configuration》的文章,不過它的作者,Amix后來在他的博客上提到[參考2],這份在google搜索vimrc會排在前十的vim配置文件,如今已經(jīng)過時了,所以他提供了一些更新信息。
(1)顏色設(shè)置
syntax on “開啟代碼高亮
syntax off “關(guān)閉代碼高亮
syntax enable “開啟代碼高亮
(2)搜索設(shè)置
set hlsearch “開啟搜索高亮
set nohlsearch “關(guān)閉搜索高亮
set incsearch “輸入搜索字符串的同時進行搜索
set ignorecase “搜索時忽略大小寫
(3)用戶界面
set showmode “開啟模式顯示
set ruler “開啟光標(biāo)位置提示
set number “顯示行號
set nonu “不顯示行號
set cursorline “強調(diào)光標(biāo)所在行
set cmdheight=1 “命令部分高度為1
(4)編輯輔助配置
set autoindent “自動縮進
set noautoindent “不自動縮進
set smartindent “智能縮進
set autoread “當(dāng)文件在外部被改變時,vim自動更新載入
set showmatch “顯示匹配的括號
參考:
[1]Run Commands,http://en.wikipedia.org/wiki/Run_commands
[2]The Ultimate vim Configuration(vimRC),http://amix.dk/blog/post/19486
(二)常用的狀態(tài)切換按鍵
1、Normal Mode -> Insert Mode
i 小寫字母i,在光標(biāo)位置插入
a 小寫字母a,在光標(biāo)的下一個位置插入
I 大寫字母I,在光標(biāo)所在行的第一個非空格處插入
A 大寫字母A,在光標(biāo)所在行的最后一個字符處插入
o 小寫字母o,在光標(biāo)所在行的下一行處插入新行
O 大寫字母O,在光標(biāo)所在行的上一行處插入新航
r 小寫字母r,替換光標(biāo)所在處的字符一次
R 大寫字母R,持續(xù)替換光標(biāo)所在處的字符,直到按下ESC
2、Normal Mode -> Command-line Mode
:w 保存文件
:w! 強制保存文件(前提是用戶有修改文件訪問權(quán)限的權(quán)限)
:q 退出緩沖區(qū)
:q! 強制退出緩沖區(qū)而不保存
:wq 保存文件并退出緩沖區(qū)
:ZZ 保存文件并且退出
:wq! 強制保存文件并退出緩沖區(qū)(前提是用戶有修改文件訪問權(quán)限的權(quán)限)
:w <filename> 另存為名為filename文件
:n1,n2 w <filename> 將n1行到n2行的數(shù)據(jù)另存為名為filename文件
: x 如果文件有更改,則保存后退出。否則直接退出。
3、Insert Mode -> Normal Mode
按下ESC鍵
4、Command-line -> Normal Mode
按下ESC鍵
(三)常用光標(biāo)移動按鍵
1、光標(biāo)字符操作
j 向下
k 向上
h 向左
l 向右
$ 光標(biāo)移動到行尾(End),注意要按Shift鍵
0 光標(biāo)移動到行首(Home)
^ 光標(biāo)移動到行首第一個非空白字符(Home),注意要按Shift鍵
2、光標(biāo)詞操作
w 光標(biāo)移動到后一詞的詞首
W 光標(biāo)移動到后一詞的詞首且忽略標(biāo)點符號
e 光標(biāo)移動到后一詞的詞尾
E 光標(biāo)移動到后一詞的詞尾且忽略標(biāo)點符號
b 光標(biāo)移動到前一詞的詞首
B 光標(biāo)移動到前一詞的詞首且忽略標(biāo)點符號
3、光標(biāo)句操作
) 光標(biāo)移動到后一句的句首
( 光標(biāo)移動到前一句的句首
% 配合“(”和“)”使用,尋找相匹配的另一半
4、光標(biāo)行操作
G 光標(biāo)移動到文檔的最后一行的第一個非空白字符
nG 光標(biāo)移動到文檔的第n行,相當(dāng)于”:n”
gg 光標(biāo)移動到文檔的第1行的第一個非空白字符,相當(dāng)于”1G”,也相當(dāng)于”:1″
<N> 光標(biāo)向下移動N行
5、光標(biāo)段操作
} 光標(biāo)移動到下一段的段首
{ 光標(biāo)移動到上一段的段首
% 配合“(”和“)”使用,尋找相匹配的另一半
6、光標(biāo)頁操作
Ctrl+f 向下翻頁(Pagedown)
Ctrl+b 向上翻頁(Pageup)
Ctrl+d 向下翻半頁
Ctrl+u 向上翻半頁
H 光標(biāo)移動到目前顯示頁的第一行
M 光標(biāo)移動到目前顯示頁的中間行
L 光標(biāo)移動到目前顯示頁的最后一行
7、光標(biāo)自由操作
Ctrl+o 回到光標(biāo)的上一位置
(四)常用編輯操作按鍵
1、刪除操作(delete)
dd 刪除光標(biāo)所在行
ndd 刪除從光標(biāo)所在行開始,向下的n行
d1G 刪除從光標(biāo)所在行開始,到第一行的所有行
dG 刪除從光標(biāo)所在行開始,到最后一行的所有行
d$ 刪除從光標(biāo)所在位置,到行尾的所有字符
d0 刪除從光標(biāo)所在位置,到行首的所有字符
2、復(fù)制操作(yank)
yy 復(fù)制光標(biāo)所在行
nyy 復(fù)制從光標(biāo)所在行開始,向下的n行
y1G 復(fù)制從光標(biāo)所在行開始,到第一行的所有行
yG 復(fù)制從光標(biāo)所在行開始,到最后一行的所有行
y$ 復(fù)制從光標(biāo)所在位置,到行尾的所有字符
y0 復(fù)制從光標(biāo)所在位置,到行首的所有字符
3、粘貼操作(paste)
p 小寫字母p,粘貼剪貼板中的數(shù)據(jù),從光標(biāo)所在行的下一行開始
P 大寫字母P,粘貼剪貼板中的數(shù)據(jù),從光標(biāo)所在行的上一行開始
4、撤銷與重做操作(undo,redo)
u (Undo)撤銷上一個操作
Ctrl+r (Redo)重做上一個操作
5、重復(fù)操作
. 重復(fù)上一操作
6、替換操作(replace)
r 替換光標(biāo)所在處字符
R 進入替換模式,直至按ESC退出
cc 替換光標(biāo)所在行
cw 替換光標(biāo)所在的英文單詞
~ 轉(zhuǎn)換大小寫
7、排版操作
:le<ft> 光標(biāo)所在行左對齊
:ri<ght> 光標(biāo)所在行右對齊
:ce<nter> 光標(biāo)所在行居中
相關(guān)文章
linux系統(tǒng)下Centos中"vim配置"到底有多強大
當(dāng)我們在linux系統(tǒng)中使用vim編輯器時,總感覺vim編輯器的界面不是太美觀,不能讓用戶使用的舒服,不僅僅頁面設(shè)置不習(xí)慣,沒有顯示的行號,也沒有自動的縮進,頁面的背景也2016-11-22在CentOS上如何使用vim設(shè)置網(wǎng)絡(luò)以便CentOS能夠聯(lián)網(wǎng)
對CentOS系統(tǒng)進行網(wǎng)絡(luò)相關(guān)設(shè)置以便CentOS能夠聯(lián)網(wǎng),下面小編給大家介紹下CentOS使用vim手動配置網(wǎng)絡(luò)相關(guān)的方法,感興趣的朋友可以看看2015-03-23- 這篇文章主要介紹了CentOS系統(tǒng)中安裝高亮vim編輯工具的方法,需要的朋友可以參考下2014-05-01
- 今天小編為大家?guī)淼氖荂entOS虛擬機下的相關(guān)操作詳解。希望可以幫助到大家,有需要的朋友一起去看看吧2017-01-05
- 今天小編為大家?guī)淼氖荂entOS系統(tǒng)基本操作常用命令詳解;希望對大家會有幫助,有需要的朋友一起去看看吧2017-01-05
CentOS系統(tǒng)如何添加用戶操作日志?CentOS系統(tǒng)添加用戶操作日志的方法
一些朋友不知道CentOS系統(tǒng)如何添加用戶操作日志?下面小編就為大家?guī)鞢entOS系統(tǒng)添加用戶操作日志的方法;有需要的朋友一起去看看吧2016-12-15- 今天小編為大家?guī)淼氖荂entOS中文件夾基本操作命令的講解;希望對大家會有幫助;有需要的朋友可以過來看看2016-12-12
- 這篇文章主要介紹了centos 安裝與操作方法,需要的朋友可以參考下2016-11-21
給VMware虛擬機中的CentOS分區(qū)擴容的操作筆記
這篇文章主要介紹了給VMware虛擬機中的CentOS分區(qū)擴容的操作筆記,先在VMware軟件中給虛擬機添加容量然后在虛擬的CentOS中操作,基于LVM,需要的朋友可以參考下2016-02-28CentOS 6.5 Linux服務(wù)器操作系統(tǒng)
CentOS 是一個企業(yè)級的 Linux 發(fā)行版本,它源于上游操作系統(tǒng)提供者(UOP)1免費公開的源代碼2014-04-09