基礎課程:
.了解 Linux 文件系統 .執行普通的文件管理操作任務(wù) .使用和定制 GNOME 界面 .系統基本命令詳解 .使用 GNOME 圖形用戶(hù)界面執行常見(jiàn)操作任務(wù) .使用 VI 編輯器打開(kāi)、編輯并保存文本文檔 .文件訪(fǎng)問(wèn)權限 .對 X Window 系統進(jìn)行定制 .使用正則表達式、模式匹配以及 I/O 重定向 .在系統中安裝、升級、刪除和查詢(xún)包 .用戶(hù)的網(wǎng)絡(luò )工具 .高級用戶(hù)工具
基礎的知識 ,你了解這點(diǎn)就夠了。 當然了,基本的命令什么的還是要熟練掌握的。
1.Linux 基礎
安裝Linux操作系統 Linux文件系統 Linux常用命令 Linux啟動(dòng)過(guò)程詳解 熟悉Linux服務(wù)能夠獨立安裝Linux操作系統 能夠熟練使用Linux系統的基本命令 認識Linux系統的常用服務(wù)安裝Linux操作系統 Linux基本命令實(shí)踐 設置Linux環(huán)境變量 定制Linux的服務(wù) Shell 編程基礎使用vi編輯文件 使用Emacs編輯文件 使用其他編輯器
2.Linux 下的 C 編程基礎
linux C語(yǔ)言環(huán)境概述 Gcc使用方法 Gdb調試技術(shù) Autoconf Automake Makefile 代碼優(yōu)化 熟悉Linux系統下的開(kāi)發(fā)環(huán)境 熟悉Gcc編譯器 熟悉Makefile規則編寫(xiě)Hello,World程序 使用 make命令編譯程序 編寫(xiě)帶有一個(gè)循環(huán)的程序 調試一個(gè)有問(wèn)題的程序
3.Shell 編程基礎
Shell 簡(jiǎn)介 認識后臺程序Bash編程熟悉Linux系統下的編輯環(huán)境 熟悉Linux下的各種Shell 熟練進(jìn)行shell編程熟悉vi基本操作 熟悉Emacs的基本操作 比較不同shell的區別 編寫(xiě)一個(gè)測試服務(wù)器是否連通的shell腳本程序 編寫(xiě)一個(gè)查看進(jìn)程是否存在的shell腳本程序 編寫(xiě)一個(gè)帶有循環(huán)語(yǔ)句的shell腳本程序
通常所說(shuō)的Linux系統只是一個(gè)內核
除了二十年前那些早期版本外,現在已經(jīng)沒(méi)有真正意義上單純的Linux系統了
都是所謂的“基于Linux內核”的操作系統,或叫Linux發(fā)行版
你所說(shuō)的Ubuntu就是這樣的系統之一,除此之外還有數以千計這樣的“發(fā)行版”
Ubuntu是用戶(hù)量最大的一個(gè),其他知名的還有Fedora、Redhat、SUSE、紅旗……非常多
所謂桌面版,即Desktop版,是指針對家庭PC用戶(hù)的版本
一般Desktop版的特點(diǎn)就是圖形界面,簡(jiǎn)單易用,娛樂(lè )性強
與之對應的還有服務(wù)器版(Server版),特點(diǎn)是穩定高效,安全性高。
另外還有一些其他的分類(lèi),比如Ubunut還有netbook版——主要是針對上網(wǎng)本或者平板電腦的
現在Ubuntu的netbook版在平板電腦市場(chǎng)已經(jīng)開(kāi)始挑戰安卓和蘋(píng)果兩家對立的局面了
新手一般建議從Ubuntu入手,相對簡(jiǎn)單
如果以后想做服務(wù)器方面的研究,也可以從Fedora入手,難度也不大,而且Fedora和Redhat很相似,Redhat在服務(wù)器市場(chǎng)則是非常知名的
[語(yǔ)法]:vi [-wn] [-R] 文件… [說(shuō)明]: vi 是一個(gè)基于行編輯器 ex 上的全屏幕編輯器,可以在vi 中使用 ex,ed的全部命令,vi選項中 -wn 指將編輯窗口大小置為n行,-R 為將編輯的文件置為只讀模式, vi 工作模式分為命令模式和輸入模式,一般情況下在命令模式下,可敲入vi命令,進(jìn)入輸入模式下時(shí)可以編輯要編輯的文本,命令 a A i I o O c C s S R 可進(jìn)入輸入模式,在輸入模式下按 ESC 鍵可推出輸入模式,回到命令模式,在命令模式中敲入: 命令,則可進(jìn)入ex方式,在屏幕底部出現提示符 : ,此時(shí)可使用任意ex命令,屏幕底行也用來(lái)作/ ? ! 命令的提示行,大多數命令可以在其前面加數字,表示命令執行的重復次數,下面簡(jiǎn)單介紹一下vi 的命令集,^ 表示(CTRL)鍵 ^B 退回前一頁(yè),前面加數字表示重復次數,每次換頁(yè)時(shí) 保留上一頁(yè)的兩行 ^D 在命令模式下,表示下滾屏幕的一半,在輸入模式下,表示回退至 左邊的自動(dòng)縮進(jìn)處 ^E 顯示屏幕底線(xiàn)之下的一行 ^F 前進(jìn)一頁(yè),前面加數字表示重復次數,每次換頁(yè)時(shí) 保留上一頁(yè)的兩行 ^G 顯示當前文件名,當前行號和文件總行數,并用百分號當前行在 整個(gè)文件中的位置 ^H(退格) 在命令模式下,光標左移一格;在輸入模式下,刪去前面的字符 ^I(TAB) 在輸入模式下,產(chǎn)生一串空格 ^J(LF) 光標下移一行 ^L 刷新屏幕,即將屏幕重新顯示 ^M(回車(chē)) 在命令模式下,光標移動(dòng)至下行開(kāi)頭 在輸入模式下,開(kāi)辟一新行 ^N 光標下移一行 ^P 光標上移一行 ^Q 在輸入模式下,將其后的非打印字符作為正文插入 ^R 刷新屏幕 ^U 屏幕上滾一半,前面加數字時(shí)表示上滾的行數,此數字對 以后的^D ^U 命令有效 ^V 在輸入模式下,將其后的非打印字符作為正文插入 ^W 在輸入模式下,使光標回退一個(gè)字 ^Y 顯示屏幕底線(xiàn)之上的一行 ^Z 暫停編輯,退回上層Shell ^[(ESC) 退出輸入模式,回到命令模式! 暫時(shí)退出編輯,執行Shell命令(雙引號) 用于標志有名緩沖區,編號緩沖區1-9用于保存被刪去的正文,字 母名緩沖區a-z供用戶(hù)存放自定義的正文$ 將光標移動(dòng)到當前行尾,前加數字則表示前移行數,如2$表示移動(dòng) 到下一行行尾% 將光標移動(dòng)到配對的小括號()或大括號{}上去( 退回句子開(kāi)頭) 前移到句子開(kāi)頭- 退到上一行第一個(gè)非空格字符. 重復上一次改變緩沖區內容的命令/ 模式向前搜索模式,將光標移動(dòng)到模式出現處,模式是一個(gè)正規 表達式,(參看 grep) : 在屏幕底部提示:,其后可使用ex命令? 功能同 / ,但方向是向前查找 [[ 光標回退至前一節分界處 \ 轉意符 ]] 光標前移至節分界處 ^(不是CTRL) 光標移至當前行第一個(gè)非空字符上 ‘ 連續兩個(gè)”表示將光標移至其移動(dòng)前的位置,’后跟字母表示光標字 母標記的行首(參看 m 命令) A 在行尾插入正文,進(jìn)入輸入模式 B 光標回退一個(gè)字 C 替換光標后的內容 D 刪除光標后的內容 E 光標前移到字尾 F 字符 在當前行向左查找指定字符 G 光標移動(dòng)到其前面數字指定的行,若未指定則移動(dòng)到最后一行 H 光標移動(dòng)到屏幕頂行,若前面有數字,則移動(dòng)到屏幕上該數字 指定的行 I 在行開(kāi)頭插入正文 J 連接兩行,若前面有數字則連接數字指定的行 L 光標移動(dòng)到屏幕底行,若前面有數字,則移動(dòng)到屏幕底線(xiàn)往上數該 數字指定的行 M 光標移動(dòng)到屏幕中線(xiàn) N 使用模式查找/或?時(shí),重復找下一個(gè)匹配的模式,但方向與上次相 反,其功能同 n ,但方向相反 O 在當前行上開(kāi)辟一新行 P 將上次被刪除的正文插入光標前面,可在其前面加緩沖區編號,編 號1-9用于保存被刪去的正文,字母名緩沖區a-z供用戶(hù)存放自定 義的正文 Q 從vi 推出進(jìn)入ex命令狀態(tài) R 替換字符串 S 替換整行 T 字符 向左查找字符 U 將當前行恢復至第一次修改前的狀態(tài) W 光標移至下一個(gè)字首 X 刪除光標前的字符 Y 將當前行存入無(wú)名緩沖區,前面加數字表示存入的行數,也可用有 名緩沖區來(lái)保存,以后可用命令p或P將其取出 ZZ 存盤(pán)退出vi a 光標后插入正文 b 光標回退至上一個(gè)字首 cw 替換當前字 c) 替換當前句子 dw 刪除一個(gè)字 dd 刪除一行 e 光標移到下一個(gè)字末 f 字符 在當前行向前查找字符 h 光標左移一格 i 在光標前插入正文 j 光標下移一行 k 光標上移一行 l 光標右移一格 m 字母 用字母標記當前行,以后可用 ‘字母使光標移動(dòng)到當前行,(參看’命令) n 重復上次 / 或 ? 命令 o 在當前行下開(kāi)辟一新行 p 將用戶(hù)緩沖區內容放到光標位置(參看P命令) r 替換當前字符 s 用一串字符替換當前字符 t 字符 光標移動(dòng)至字符前 u 取消上次操作 w 光標移至下一字首 x 刪除當前字符 yw 將當前字存入無(wú)名緩沖區,前面可加x,表示存入名字為x的有名 緩沖區(x為a-z),也可加數字表示存入的字數,以后可用P或p命 令取出 yy 將當前行存入無(wú)名緩沖區,用法參看yw { 光標移動(dòng)至前一段開(kāi)頭 | 光標移至行首,若前面加數字,則移到數字指定行的行首 } 光標移至下一段開(kāi)頭 在:提示符下,常用命令如下::w 當前文件存盤(pán) :w! 強制存盤(pán) :w 文件 將內容寫(xiě)入指定文件 :w! 文件 強制寫(xiě)入指定文件 :x,y w 文件 將 x至 y 行寫(xiě)入指定文件中 :r 文件 將文件讀到光標位置 :r ! 命令將系統命令的輸出讀到光標位置 :q 退出編輯 :q! 強制退出 :x 與命令ZZ相同 :e 文件名 。
進(jìn)入vi的命令
vi filename :打開(kāi)或新建文件,并將光標置于第一行首
vi +n filename :打開(kāi)文件,并將光標置于第n行首
vi + filename :打開(kāi)文件,并將光標置于最后一行首
vi +/pattern filename:打開(kāi)文件,并將光標置于第一個(gè)與pattern匹配的串處
vi -r filename :在上次正用vi編輯時(shí)發(fā)生系統崩潰,恢復filename
vi filename。.filename :打開(kāi)多個(gè)文件,依次進(jìn)行編輯
移動(dòng)光標類(lèi)命令[/b]
h :光標左移一個(gè)字符
l :光標右移一個(gè)字符
space:光標右移一個(gè)字符
Backspace:光標左移一個(gè)字符
k或Ctrl+p:光標上移一行
j或Ctrl+n :光標下移一行
Enter :光標下移一行
w或W :光標右移一個(gè)字至字首
b或B :光標左移一個(gè)字至字首
e或E :光標右移一個(gè)字至字尾
) :光標移至句尾
( :光標移至句首
}:光標移至段落開(kāi)頭
{:光標移至段落結尾
nG:光標移至第n行首
n+:光標下移n行
n-:光標上移n行
n$:光標移至第n行尾
H :光標移至屏幕頂行
M :光標移至屏幕中間行
L :光標移至屏幕最后行
0:(注意是數字零)光標移至當前行首
$:光標移至當前行尾
屏幕翻滾類(lèi)命令
Ctrl+u:向文件首翻半屏
Ctrl+d:向文件尾翻半屏
Ctrl+f:向文件尾翻一屏
Ctrl+b;向文件首翻一屏
nz:將第n行滾至屏幕頂部,不指定n時(shí)將當前行滾至屏幕頂部。
插入文本類(lèi)命令
i :在光標前
I :在當前行首
a:光標后
A:在當前行尾
o:在當前行之下新開(kāi)一行
O:在當前行之上新開(kāi)一行
r:替換當前字符
R:替換當前字符及其后的字符,直至按ESC鍵
s:從當前光標位置處開(kāi)始,以輸入的文本替代指定數目的字
S:刪除指定數目的行,并以所輸入文本代替之
ncw或nCW:修改指定數目的字
nCC:修改指定數目的行
刪除命令
ndw或ndW:刪除光標處開(kāi)始及其后的n-1個(gè)字
do:刪至行首
d$:刪至行尾
ndd:刪除當前行及其后n-1行
x或X:刪除一個(gè)字符,x刪除光標后的,而X刪除光標前的
Ctrl+u:刪除輸入方式下所輸入的文本
搜索及替換命令
/pattern:從光標開(kāi)始處向文件尾搜索pattern
?pattern:從光標開(kāi)始處向文件首搜索pattern
n:在同一方向重復上一次搜索命令
N:在反方向上重復上一次搜索命令
最后行方式命令
:n1,n2 co n3:將n1行到n2行之間的內容拷貝到第n3行下
:n1,n2 m n3:將n1行到n2行之間的內容移至到第n3行下
:n1,n2 d :將n1行到n2行之間的內容刪除
:w :保存當前文件
:e filename:打開(kāi)文件filename進(jìn)行編輯
:x:保存當前文件并退出
:q:退出vi
:q!:不保存文件并退出vi
:!command:執行shell命令command
ndd:將當前行及其下共n行文本刪除,并將所刪內容放到1號刪除寄存器中。
vi的基本概念 基本上vi可分為三種操作狀態(tài),分別是命令模式(Command mode)、插入模式(Insert mode)和底線(xiàn)命令模式(Last line mode), 各模式的功能區分如下: 1. Comand mode:控制屏幕光標的移動(dòng),字符或光標的刪除,移動(dòng)復制某區段及進(jìn)入Insert mode下,或者到Last line mode。
2. Insert mode:唯有在Insert mode下,才可做文字數據輸入,按Esc等可回到Comand mode。 3. Last line mode:將儲存文件或離開(kāi)編輯器,也可設置編輯環(huán)境,如尋找字符串、列出行號等。
不過(guò)可以把vi簡(jiǎn)化成兩個(gè)模式,即是將Last line mode也算入Command mode,把vi分成Command 和Insert mode。 vi的基本操作 ?進(jìn)入vi 在系統提示符號輸入vi及文件名稱(chēng)后,即可進(jìn)入vi全屏幕編輯畫(huà)面: $ vi testfile 有一點(diǎn)要特別注意,就是您進(jìn)入vi之后是處于“Command mode”下,您要切換到Insert mode才能輸入文字。
初次用vi的用戶(hù)都會(huì )想先用上下左右鍵移動(dòng)光標,結果電腦一直叫,把自己氣個(gè)半死,所以進(jìn)入vi后,先不要亂動(dòng), 轉換入Insert后再說(shuō)。?切換至Insert mode編輯文件在Command mode下按'i'、'a'或'o'三鍵就可進(jìn)入Insert mode。
這時(shí)候您就可以開(kāi)始輸入文字了。 i: 插入,從目前光標所在之處插入所輸入的文字。
a: 增加,目前光標所在的下一個(gè)字開(kāi)始輸入文字。 o: 插入新的一行,從行首開(kāi)始輸入文字。
?Insert的切換→Command mode,按Esc鍵 您目前處于Insert mode,您就只能一直打字。假如您發(fā)現打錯字了,想用光標鍵往回移動(dòng),將該字刪除, 就要按ESC鍵轉換回Command mode,再刪除文字。
?離開(kāi)vi及存文件 在Command mode下,可按冒號“:”鍵入入Last line mode,例如: :w filename (輸入“w filename”,將文章存入指定的文件名filename) :wq (輸入“wq”,因為進(jìn)入之時(shí)已經(jīng)指定文件名testfile,所以會(huì )寫(xiě)入testfile并離開(kāi)vi) :q! (輸入“q!”,強制離開(kāi)并放棄編輯的文件) Command mode功能鍵列表 在介紹command mode指令的時(shí)后,指令后面加上“常用”字眼的功能鍵,表示比較常用的vi指令, 請讀者您一定要學(xué)會(huì )、記住。 (1)I、a、o切換進(jìn)入Insert mode。
[超級常用] (2)移動(dòng)光標 vi可以直接用鍵盤(pán)上的光標鍵來(lái)上下左右移動(dòng),但正規的vi是用小寫(xiě)英文字母 h、j、k、l,分別控制光標左、下、上、右移一格。 按Ctrl+B:屏幕往后移動(dòng)一頁(yè)。
[常用] 按Ctrl+F:屏幕往前移動(dòng)一頁(yè)。[常用] 按Ctrl+U:屏幕往后移動(dòng)半頁(yè)。
按Ctrl+D:屏幕往前移動(dòng)半頁(yè)。 按 0 (數字零):移動(dòng)文章的開(kāi)頭。
[常用] 按 G:移動(dòng)到文章的最后。[常用] 按 w:光標跳到下個(gè)word的開(kāi)頭。
[常用] 按 e:光標跳到下個(gè)word的字尾。 按 b:光標回到上個(gè)word的開(kāi)頭。
按 $:移到光標所在行的行尾。[常用] 按 ^:移到該行第一個(gè)非空白的字符。
按 0:移到該行的開(kāi)頭位置。[常用] 按 #:移到該行的第#個(gè)位置,例:51、121。
[常用] (3)刪除文字 x:每按一次刪除光標所在位置的后面一個(gè)字符。[超常用] #x:例如,6x 表刪除光標所在位置的后面6個(gè)字符。
[常用] X:大字的X,每按一次刪除光標所在位置的前面一個(gè)字符。 #X:例如,20X 表刪除光標所在位置的前面20個(gè)字符。
dd:刪除光標所在行。[超常用] #dd:例如,6dd表刪除從光標所在的該行往下數6行之文字。
[常用] (4)復制 yw:將光標所在處到字尾的字符復制到緩沖區中。 (想在和#x、#X的功能相反) p:將緩沖區內的字符粘貼到光標所在位置(指令'yw'與‘p必須搭配使用)。
yy:復制光標所在行。[超常用] p:復制單行到您想粘貼之處。
(指令'yy'與'p'必須搭配使用) #yy:如:6yy表示拷貝從光標所在的該行往下數6行之文字。[常用] p:復制多行到您想粘貼之處。
(指令'#yy'與'p'必須搭配使用) “ayy:將復制行放入buffer a, vi提供buffer功能,可將常用的數據存在buffer “ap:將放在buffer a的數據粘貼。 “b3yy:將三行數據存入buffer b。
“b3p:將存在buffer b的資料粘貼 (5)取代 r: 取代光標所在處的字符:[常用] R:取代字符直到按Esc為止。 (6)復原(undo)上一個(gè)指令 u:假如您誤操作一個(gè)指令,可以馬上按u,回復到上一個(gè)操作。
[超常用] .: .可以重復執行上一次的指令。 (7)更改 cw:更改光標所在處的字到字尾$處。
c#w:例如,c3w代表更改3個(gè)字。 (8)跳至指定行 Ctrl+G:列出光標所在行的行號。
#G:例如,15G,表示移動(dòng)光標至文章的第15行行首。[常用] Last line mode下指令簡(jiǎn)介 讀者您要使用Last line mode之前,請記得先按Esc鍵確定您已經(jīng)處于Command mode下后,再按冒號“:”或“/”或“?” 三鍵的其中一鍵進(jìn)入Last line mode。
1.列出行號 set nu: 輸入“set nu”后,會(huì )在文章的每一行前面列出行號。 2.跳到文章的某一行 #:井號代表一個(gè)數字,在Last line mode提示符號“:”前輸入數字,再按Enter就會(huì )跳到該行了, 如:15[Enter]就會(huì )跳到文章的第15行。
[常用] 3.尋找字符串 /關(guān)鍵字:先按/,再輸入您想尋找的字,如果第一次找的關(guān)鍵字不是您相盡可能的,可以一直按n會(huì )往下尋找到您要的關(guān)鍵字為止。 ?關(guān)鍵字:先按。
Linux之定時(shí)器與時(shí)間管理 功能最強在的編輯器——vi vi是所有UNIX系統都會(huì )提供的屏幕編輯器,它提供了一個(gè)視窗設備,通過(guò)它可以編輯文件。
當然,對UNIX系統略有所知的人, 或多或少都覺(jué)得vi超級難用,但vi是最基本的編輯器,所以希望讀者能好好把它學(xué)起來(lái),以后在UNIX世界里必將暢行無(wú)阻、游刃有余,因為其他幾種文本處理器并非UNIX標準配備。 說(shuō)不定別人的Linux機器沒(méi)安裝joe或pico,如果您不會(huì )vi,那您可能就沒(méi)輒了。
vi的基本概念 基本上vi可分為三種操作狀態(tài),分別是命令模式(Command mode)、插入模式(Insert mode)和底線(xiàn)命令模式(Last line mode), 各模式的功能區分如下: 1. Comand mode:控制屏幕光標的移動(dòng),字符或光標的刪除,移動(dòng)復制某區段及進(jìn)入Insert mode下,或者到Last line mode。 2. Insert mode:唯有在Insert mode下,才可做文字數據輸入,按Esc等可回到Comand mode。
3. Last line mode:將儲存文件或離開(kāi)編輯器,也可設置編輯環(huán)境,如尋找字符串、列出行號等。 不過(guò)可以把vi簡(jiǎn)化成兩個(gè)模式,即是將Last line mode也算入Command mode,把vi分成Command 和Insert mode。
vi的基本操作 ?進(jìn)入vi 在系統提示符號輸入vi及文件名稱(chēng)后,即可進(jìn)入vi全屏幕編輯畫(huà)面: $ vi testfile 有一點(diǎn)要特別注意,就是您進(jìn)入vi之后是處于“Command mode”下,您要切換到Insert mode才能輸入文字。 初次用vi的用戶(hù)都會(huì )想先用上下左右鍵移動(dòng)光標,結果電腦一直叫,把自己氣個(gè)半死,所以進(jìn)入vi后,先不要亂動(dòng), 轉換入Insert后再說(shuō)。
切換至Insert mode編輯文件在Command mode下按'i'、'a'或'o'三鍵就可進(jìn)入Insert mode。 這時(shí)候您就可以開(kāi)始輸入文字了。
i: 插入,從目前光標所在之處插入所輸入的文字。 a: 增加,目前光標所在的下一個(gè)字開(kāi)始輸入文字。
o: 插入新的一行,從行首開(kāi)始輸入文字。 ?Insert的切換→Command mode,按Esc鍵 您目前處于Insert mode,您就只能一直打字。
假如您發(fā)現打錯字了,想用光標鍵往回移動(dòng),將該字刪除, 就要按ESC鍵轉換回Command mode,再刪除文字。 ?離開(kāi)vi及存文件 在Command mode下,可按冒號“:”鍵入入Last line mode,例如: :w filename (輸入“w filename”,將文章存入指定的文件名filename) :wq (輸入“wq”,因為進(jìn)入之時(shí)已經(jīng)指定文件名testfile,所以會(huì )寫(xiě)入testfile并離開(kāi)vi) :q! (輸入“q!”,強制離開(kāi)并放棄編輯的文件) Command mode功能鍵列表 在介紹command mode指令的時(shí)后,指令后面加上“常用”字眼的功能鍵,表示比較常用的vi指令, 請讀者您一定要學(xué)會(huì )、記住。
(1)I、a、o切換進(jìn)入Insert mode。[超級常用] (2)移動(dòng)光標 vi可以直接用鍵盤(pán)上的光標鍵來(lái)上下左右移動(dòng),但正規的vi是用小寫(xiě)英文字母 h、j、k、l,分別控制光標左、下、上、右移一格。
按Ctrl+B:屏幕往后移動(dòng)一頁(yè)。 [常用] 按Ctrl+F:屏幕往前移動(dòng)一頁(yè)。
[常用] 按Ctrl+U:屏幕往后移動(dòng)半頁(yè)。 按Ctrl+D:屏幕往前移動(dòng)半頁(yè)。
按 0 (數字零):移動(dòng)文章的開(kāi)頭。[常用] 按 G:移動(dòng)到文章的最后。
[常用] 按 w:光標跳到下個(gè)word的開(kāi)頭。 [常用] 按 e:光標跳到下個(gè)word的字尾。
按 b:光標回到上個(gè)word的開(kāi)頭。 按 $:移到光標所在行的行尾。
[常用] 按 ^:移到該行第一個(gè)非空白的字符。 按 0:移到該行的開(kāi)頭位置。
[常用] 按 #:移到該行的第#個(gè)位置,例:5 1、121。 [常用]。
vi 的工作模式Vi 在初始啟動(dòng)后首先進(jìn)入編輯模式,這時(shí)用戶(hù)可以利用一些預先定義的按鍵來(lái)移動(dòng)光標、刪除文字、復制或粘貼文字等。
這些按鍵均是普通的字符,例如 l 是向右移動(dòng)光標,相當于向右箭頭鍵,k 是 向下移動(dòng)光標,相當于向下箭頭鍵。在編輯模式下,用戶(hù)還可以利用一些特殊按鍵選定文字,然后 再進(jìn)行刪除、或復制等操作。
當用戶(hù)在編輯模式下鍵入 i, a, o 等命令之后,可進(jìn)入插入模式;鍵入 : 可進(jìn)入命名模式。 在插入模式下,用戶(hù)隨后輸入的,除 Esc 之外的任何字符均將被看成是插入到編輯緩沖區中 的字符。
按 Esc 之后,從插入模式切換到編輯模式。在命令模式,Vi 將把光標挪到屏幕的最下方,并在第一個(gè)字符的位置顯示一個(gè) :(冒號)。
這時(shí), 用戶(hù)就可以鍵入一些命令。這些命令可用來(lái)保存文件、讀取文件內容、執行 Shell 命令、設置 Vi 參數、以正則表達式的方式查找字符串或替換字符串等。
編輯模式1. 移動(dòng)光標要對正文內容進(jìn)行修改,首先必須把光標移動(dòng)到指定位置。移動(dòng)光標的最簡(jiǎn)單的方式是按鍵盤(pán)的上、下、左、右箭頭鍵。
除了這種最原始的方法之外,用戶(hù)還可以利用 vi 提供的眾多字符組合鍵,在正文中移動(dòng)光標,迅速到達指定的行或列,實(shí)現定位。例如:k、j、h、l 功能分別等同于上、下、左、右箭頭鍵Ctrl+b 在文件中向上移動(dòng)一頁(yè)(相當于 PageUp 鍵)Ctrl+f 在文件中向下移動(dòng)一頁(yè)(相當于 PageDown 鍵)H 將光標移到屏幕的最上行(Highest)nH 將光標移到屏幕的第 n 行2H 將光標移到屏幕的第 2 行M 將光標移到屏幕的中間(Middle)L 將光標移到屏幕的最下行(Lowest)nL 將光標移到屏幕的倒數第 n 行3L 將光標移到屏幕的倒數第 3 行w 在指定行內右移光標,到下一個(gè)字的開(kāi)頭e 在指定行內右移光標,到一個(gè)字的末尾b 在指定行內左移光標,到前一個(gè)字的開(kāi)頭0 數字0,左移光標,到本行的開(kāi)頭$ 右移光標,到本行的末尾^ 移動(dòng)光標,到本行的第一個(gè)非空字符2. 替換和刪除將光標定位于文件內指定位置后,可以用其他字符來(lái)替換光標所指向的字符,或從當前光標位置刪除一個(gè)或多個(gè)字符。
例如:rc 用 c 替換光標所指向的當前字符nrc 用 c 替換光標所指向的前 n 個(gè)字符5rc 用 c 替換光標所指向的前 5 個(gè)字符x 刪除光標所指向的當前字符nx 刪除光標所指向的前 n 個(gè)字符3x 刪除光標所指向的前 3 個(gè)字符dw 刪除光標右側的字ndw 刪除光標右側的 n 個(gè)字3dw 刪除光標右側的 3 個(gè)字db 刪除光標左側的字ndb 刪除光標左側的 n 個(gè)字5db 刪除光標左側的 5 個(gè)字dd 刪除光標所在行,并去除空隙ndd 刪除 n 行內容,并去除空隙3dd 刪除 3 行內容,并去除空隙3. 粘貼和復制從正文中刪除的內容(如字符、字或行)并沒(méi)有真正丟失,而是被剪切并復制到了一個(gè)內存緩沖區中。用戶(hù)可將其粘貼到正文中的指定位置。
完成這一操作的命令是:p 小寫(xiě)字母 p,將緩沖區的內容粘貼到光標的后面P 大寫(xiě)字母 P,將緩沖區的內容粘貼到光標的前面如果緩沖區的內容是字符或字,直接粘貼在光標的前面或后面;如果緩沖區的內容為整行正文,則粘貼在當前光標所在行的上一行或下一行。注意上述兩個(gè)命令中字母的大小寫(xiě)。
vi 編輯器經(jīng)常以一對大、小寫(xiě)字母(如 p 和 P)來(lái)提供一對相似的功能。通常,小寫(xiě)命令在光標的后面進(jìn)行操作,大寫(xiě)命令在光標的前面進(jìn)行操作。
有時(shí)需要復制一段正文到新位置,同時(shí)保留原有位置的內容。這種情況下,首先應當把指定內容復制(而不是剪切)到內存緩沖區。
完成這一操作的命令是:yy 復制當前行到內存緩沖區nyy 復制 n 行內容到內存緩沖區5yy 復制 5 行內容到內存緩沖區4. 搜索字符串和許多先進(jìn)的編輯器一樣,vi 提供了強大的字符串搜索功能。要查找文件中指定字或短語(yǔ)出現的位置,可以用 vi 直接進(jìn)行搜索,而不必以手工方式進(jìn)行。
搜索方法是:鍵入字符 / ,后面跟以要搜索的字符串,然后按回車(chē)鍵。編輯程序執行正向搜索(即朝文件末尾方向),并在找到指定字符串后,將光標停到該字符串的開(kāi)頭;鍵入 n 命令可以繼續執行搜索,找出這一字符串下次出現的位置。
用字符 ? 取代 / ,可以實(shí)現反向搜索(朝文件開(kāi)頭方向)。例如:/str1 正向搜索字符串 str1n 繼續搜索,找出 str1 字符串下次出現的位置?str2 反向搜索字符串 str2無(wú)論搜索方向如何,當到達文件末尾或開(kāi)頭時(shí),搜索工作會(huì )循環(huán)到文件的另一端并繼續執行。
5. 撤銷(xiāo)和重復在編輯文檔的過(guò)程中,為消除某個(gè)錯誤的編輯命令造成的后果,可以用撤消命令。另外,如果用戶(hù)希望在新的光標位置重復前面執行過(guò)的編輯命令,可用重復命令。
u 撤消前一條命令的結果. 重復最后一條修改正文的命令6. 文本選中vi 可進(jìn)入到一種成為 Visual 的模式,在該模式下,用戶(hù)可以用光標移動(dòng)命令可視地選擇文本,然后再 執行其他編輯操作,例如刪除、復制等。 v 字符選中命令 V 行選中命令插入模式1. 進(jìn)入插入模式在編輯模式下正確定位光標之后,可用以下命令切換到插入模式:i 在光標左側輸入正文a 在光標右側輸入正文o 在光標所在行的下一行增添新行O 在光標所在行的上一行增添新行I 在光標所在行的開(kāi)頭輸入正文A 在光標所在行的末尾輸入正文上面介紹了幾種切換到插入模式的簡(jiǎn)。
聲明:本網(wǎng)站尊重并保護知識產(chǎn)權,根據《信息網(wǎng)絡(luò )傳播權保護條例》,如果我們轉載的作品侵犯了您的權利,請在一個(gè)月內通知我們,我們會(huì )及時(shí)刪除。
蜀ICP備2020033479號-4 Copyright ? 2016 學(xué)習?shū)B(niǎo). 頁(yè)面生成時(shí)間:3.657秒