標籤:
http://blog.csdn.net/sharp_allen/article/details/27075133轉載
說了這麼多,其實還少一個和word,記事本一樣的編輯器,在各個作業系統都有編輯器,在linux裡也有,比如gedit編輯器,很方便。在終端裡直接敲擊gedit即可開啟這個編輯器。儲存到案頭,名字為geditfiles,再終端裡使用ls命令查看:
gedit就是一個全螢幕的編輯器!!還有一個編輯器叫做kate編輯器,可以在裡面直接敲命令等,圖形介面的東東,和windows下的沒什麼區別,還有其他的一些。
注意:
如果我們通過遠程登入進入linux作業系統的話,是沒有圖形介面的,只有字元介面,這幾個都用不了,那麼可以使用字元編輯器vim(在unix裡叫vi)。
運行一個vim,可視化的編輯器
vi是一種全螢幕的文字編輯器,游標可以全螢幕的跑,一個純字元介面的,遠程終端可以使用。
Vi有兩種狀態,初始的時候是命令狀態,還有一種狀態是插入狀態。
而命令狀態下,會分出一種模式叫底行模式。底行模式屬於命令狀態的。
在命令狀態下,輸入的內容都被當作命令看待,相反,插入狀態下,都把內容當作文字!需要哪種狀態,就進入即可。
如何退出和 儲存?
在命令狀態下使用冒號+q+歎號(:q!)這三個按鍵的組合,在組合中,歎號!表示強制執行的意思,因為這個命令是不儲存就強制退出的。沒有儲存就退,那就是強制啊!
使用:wq是儲存然後退出
:x也是儲存退出
使用大寫的ZZ也是儲存退出(不提倡使用)
使用:w 檔案名稱字 是只存為新檔案不退出
注意:在插入狀態下不管用,因為全部當作文文書處理了,必須按esc之後,先進入命令狀態下再進行命令的操作才能用。
這種輸入冒號就在底行的命令狀態也叫底行模式。
注意:以後在linux下寫c和c++程式幾乎都用這個來寫了!
如何移動游標呢?
vi提供了一些鍵盤操作游標的功能。(在命令狀態下了)
比如右手上經常按住的hjkl四個鍵,hl是左右,j是往下面移動,k是上面移動。當然,直接使用游標移動也可。
移動到行首:使用命令數字0,或者直接按home鍵
移動到行尾:使用命令shilft+4即可,或者$符號,或者按end鍵,但是一些unix系統不支援,所以還是命令比較好。
移動到螢幕的行首:使用字母H(head,注意區分大小寫!!!!!!!大寫H,小寫h是向左移動游標)。
移動到螢幕的末尾:使用字母 L(last,同樣是大寫L,小寫l是向右移動游標)
移動到螢幕中間使用字母:M(大寫字母M,middle)
翻頁 ctrl+f (forward前進)
後退 ctrl+b (backward回退)
想要到某一行去:用冒號: 加行號,或者行號+G
w移動到下一個單詞的開頭
b移動到上一個單詞的開頭
e移動到下一個單詞的末尾
注意:
這些命令都是在命令狀態下操作,而鍵盤的按鍵是可以在插入狀態下使用。
插入i a o 或者insert按鍵
i是正規的從命令模式進入插入模式,是在游標位置前面去插入(insert)
a原來游標位置後面插入(append附加;添加;貼上;簽(名))
o在游標位置下面重啟一行,不會截斷原來的行
iao都是小寫,而以下是大寫的IAO:
I 在行首插入
A 在行尾追加插入
O 在游標位置上面插入空行,注意小寫o是在游標位置下面插入一行。
注意:
insert是命令,插入,覆蓋狀態之間的轉換
顯示和取消行號:
: set nu顯示行號在左邊
: set nonu取消行號
打錯字了,還可以刪除字元,在插入模式下用delete,或者Backspace鍵(最好是在插入狀態下刪除),在命令模式下使用命令比較好,因unix下一些不管用:
刪除:小寫x 是刪除一個字元(游標位置的)
刪除一串;使用 n+x 刪除n個字元,這是給x命令指定刪除的字元數。但是一般都是在本行刪除,多了不會到下一行,以免誤操作。
dw刪除到下一個單詞的開頭(deleteword)
de刪除到本單詞的結尾(delete end)
db刪除到本單詞的開頭(deletebegin)
dd刪除一整行 3dd刪除3行
刪除從游標位置到行尾d$
刪除到行首d0
:9,16刪除第9到16行
刪除錯了,我們還可以恢複:
小寫u 命令(undo撤銷,按照系統不同,有的支援恢複次數也不一樣,看情況,但是都至少支援恢複一次)
小寫p是刪除之後(東西在vi的剪貼簿裡)再粘貼到vi編輯器,4p重複插入4次,粘貼在游標位置之後
注意:
大寫的P粘貼在游標位置之前
小寫p在後面粘貼
有些類似剪下
移動(move的縮寫m)
:8,11m18從第8行到11行移動到第18行後面
dd剪貼(刪除)一行,3dd剪貼3行,p粘帖
複製(copy的縮寫co)
:8,11co18
複製一個字元使用yl,相應的3yl 複製3個字元,粘貼使用p
yw(word)複製一個單詞(帶末尾的空格)
ye不帶末尾的空格!
yy複製一行,而複製3行是3yy
替換(replace的縮寫r)
r+替換內容,4r替換4個字元
s把一個字元換成多個字元
cw(change word)替換整個單詞 cw ce
cc替換一整行 c0 c$都一樣,就這些。
:5,8s/wf/妻子/g 5到8行把所有的wf替換成妻子,g表示全部
全文替換:先用ctrl+g 得到這個檔案多少行
:1,38s/wf/妻子/g
也可以
:1,$s/wf/妻子/g $表示最後一行
:%s/wf/妻子/g %表示從第一個到最後一行
~可以把大寫換成小寫,小寫換成大寫
尋找:/後面開始找和?前面開始找
/a 尋找當前游標所在位置後面的a
?q 尋找當前游標所在位置前面的q字元,也就是往回找。
注意:游標當前停留在哪裡,就是找到了哪裡,如果繼續找,則按n(next)即可繼續往下找。到結尾則提示你尋找到結尾了。
vim 編輯器簡單使用總結