Linux文本編輯器是編輯腳本、文本文件的利器厢汹∶睿可供我們進(jìn)行選擇的編輯器也有很多,各有特色烫葬,比如
vim
,nano
,emacs
,KWrite
等界弧。但最常用的、功能強(qiáng)大的是vim編輯器搭综;而nano編輯器有簡單垢箕,易用的優(yōu)勢。本次就主要簡單學(xué)習(xí)這兩種編輯器的用法~
vim編輯器
1兑巾、vim與vi
- vi編輯器是Unix系統(tǒng)最初的編輯器条获;
- 在GNU項(xiàng)目將vi開源化時,對其進(jìn)行了改進(jìn)蒋歌,稱為 vi improved帅掘,或vim;
- 在不同的Linux系統(tǒng)里堂油,除了vim命令修档,也有vi命令,如下--
(1)CentOS發(fā)行版中府框,vi是vim的別名吱窝;
alias vi
which vim
(2)Ubuntu發(fā)行版中,/user/bin/vi
為一系列文件鏈接中的一環(huán)迫靖,最終指向/user/bin/vim.tiny
alias vi
which vi
ls -lh /user/bin/vi #鏈接至/etc/alternatives/vi
ls -lh /etc/alternatives/vi #鏈接至/user/bin/vi
ls -lh /user/bin/vim.tiny
- 結(jié)果發(fā)現(xiàn)
vi
最終指向vim.tiny編輯器院峡,其僅提供少量vim編輯器功能; - 如果希望
vi
能夠使用基礎(chǔ)的vim
功能系宜,需要安裝vim基礎(chǔ)包照激。然后,vi
的鏈接就改至/user/bin/vim.basic
了
sudo apt-get install vim
readlink -f /user/bin/vi #查找鏈接文件的最終一環(huán)
我認(rèn)為上述安裝vim基礎(chǔ)包的意義是使Ubuntu系統(tǒng)的
vi
功能增強(qiáng)蜈首,而vim
命令是默認(rèn)已經(jīng)安裝好的实抡。此外個人認(rèn)為還是養(yǎng)成使用vim
命令的習(xí)慣比較好~
2欠母、進(jìn)入編輯器
(1)創(chuàng)建并打開新文本欢策,并命名為newfile
vim newfile
(2)編輯已存在的文本文件,直接指定該文本名即可
vim myprog.c
- 如果直接使用
vim
命令赏淌,不加其它參數(shù)踩寇,會創(chuàng)建新文件,之后再命名六水,個人覺得不要這樣使用俺孙。
3辣卒、vim編輯模式
3.1、普通模式
- 剛打開進(jìn)入的界面睛榄,即為普通模式荣茫;
- 操作要點(diǎn)如下
(1)移動光標(biāo)
- 一般可以使用方向鍵移動;
- 也可使用快捷鍵:
PageDown
--下翻一頁场靴、PageUp
--上翻一頁啡莉、G
--移到最后一行,gg
--到第一行旨剥;
(2)常用編輯命令(直接按鍵即可咧欣,詳見p185)
- 刪除/剪切
x
刪除光標(biāo)位的單字符;通常用刪除鍵(Backspace)轨帜,但不能識別delete鍵魄咕;
-- 2x
則會刪除從光標(biāo)當(dāng)前位置開始的兩個字符;
dd
刪除光標(biāo)所在行蚌父;
-- 5dd
則會刪除從光標(biāo)當(dāng)前所在行開始的五行哮兰。
dw
刪除光標(biāo)所在單詞;
d$
刪除光標(biāo)至行尾的內(nèi)容梢什;
u
撤銷前一條編輯命令奠蹬;
Ctrl+r
與u
相反
值得注意的是,vim在刪除數(shù)據(jù)時嗡午,實(shí)際上會將數(shù)據(jù)保存在單獨(dú)的一個寄存器中囤躁,可以用
p
命令(先將光標(biāo)移到目標(biāo)位置)完成“粘貼”操作
- 有剪切就有復(fù)制,命令為
y
荔睹、yy
狸演、yw
、y$
僻他,意義分別對應(yīng)上面的剪切內(nèi)容命令宵距,然后移動光標(biāo),配合p
命令完成復(fù)制吨拗。
(3)命令行模式--保存满哪、退出
- 在普通模式下,按冒號鍵(應(yīng)該是英文輸入法下劝篷,同時按
shift
鍵)
q
退出編輯器哨鸭,如果文件已修改請使用下面的命令
q!
退出編輯器,且不保存
wq
退出編輯器娇妓,且保存文件
w newname
另存為newname文件
3.2像鸡、插入模式
- 在普通模式下,按
i
鍵進(jìn)入插入模式哈恰。 - 在此模式下只估,可以輸入志群、編寫文本內(nèi)容。
- 最后按
Esc
鍵可以切換回普通模式蛔钙。
4锌云、查找與替換功能
(1)查找
- 首先按斜線鍵(/),光標(biāo)會定位到消息行吁脱,并顯示
/
- 然后在斜線后輸入要查找的字符串宾抓,回車
- 若存在多個結(jié)果,要把光標(biāo)切換下一個位置豫喧,按斜線鍵后再按回車石洗;或者直接使用
n
鍵
(2)替換 (需要進(jìn)入命令行模式)
在普通模式下,按冒號鍵(應(yīng)該是英文輸入法下紧显,同時按shift
鍵)讲衫,輸入下列命令
-
s/old/new
會跳到old第一次出現(xiàn)的地方,并用new替換孵班; -
%s/old/new
用new替換文件中所有的old涉兽。
以上為vim編輯器的基本用法,其還有很多高級篙程、復(fù)雜的功能枷畏,以后需要用到再深入學(xué)習(xí)。
- 學(xué)習(xí)perl時的補(bǔ)充:修改默認(rèn)設(shè)置虱饿,使vim能夠通過文件后綴名拥诡,自動對腳本文件進(jìn)行語法高亮,便于編輯氮发;此外一般也要設(shè)置下行號渴肉。
vim .vimrc #輸入下面兩行信息
syntax on #設(shè)置語法高亮
set nu #設(shè)置行號
#保存退出
此時再用vim打開.pl文件將會得到預(yù)期的結(jié)果;此外.vimrc
文件還可以進(jìn)行更多的配置設(shè)置~
Ctrl + N
或者Ctrl + P
在腳本編輯時的自動補(bǔ)齊功能爽冕。
nano編輯器
和vim編輯器一樣仇祭,大多數(shù)Linux發(fā)行版均默認(rèn)安裝了nano編輯器。但是nano較簡單颈畸、易用乌奇,適合新手。簡單介紹一下~
(1)進(jìn)入編輯
- 格式與vim相同
nano oldfile
nano newfile
(2)基礎(chǔ)操作
- 進(jìn)入nano編輯界面眯娱,在底部兩行為快捷鍵的操作提示:ctrl鍵+對應(yīng)字母鍵礁苗。這就很nice了,前提是要理解對應(yīng)什么功能困乒,比如--
ctrl+o
保存文件
ctrl+k
剪切文本行
ctrl+u
粘貼
ctrl+w
查找
ctrl+x
退出
關(guān)于文本編輯器暫且就學(xué)習(xí)這些基礎(chǔ)用法吧~寂屏,教材還有其它編輯器的類型介紹贰谣,詳見p188娜搂。了解文本編輯器后迁霎,就差不多能開始學(xué)習(xí)shell腳本了。加油百宇!
參考教材《Linux命令行與shell腳本編程大全》