一、vi的使用
1、一般模式(游標移動、搜尋、取代、刪除字元、刪除整列、複製整列、貼上整列)
以 vi 處理乙個檔案的時後,一進入該檔案就是一般模式了。在這個模式中, 你可以使用『上下左右』按鍵來移動游標,您可以使用『刪除字元』或『刪除整行』來處理檔案內容, 也可以使用『複製、貼上』來處理您的檔案資料。
2、編輯模式(可輸入任何字元)
在一般模式中可以處理刪除、複製、貼上等等的動作,但是卻無法編輯的! 要等到您按下『i, i, o, o, a, a, r, r』等字母之後才會進入編輯模式。注意了!通常在 linux 中,按下上述的字母時,在畫面的左下方會出現『 insert 或 replace 』的字樣,才可以輸入任何字來輸入到您的檔案中!而如果要回到一般模式時, 則必須要按下『esc』這個按鍵即可退出編輯模式。
3、指令列表模式(讀取、儲存檔案和其他額外功能)
在一般模式當中,輸入『 : 或 / 或 ? 』就可以將游標移動到最底下那一行,在這個模式當中, 可以提供您『搜尋資料』的動作,而讀取、存檔、大量取代字元、離開 vi 、顯示行號 等等的動作則是在此模式中達成的!
例子:使用vi建立乙個文件名為test.txt的資料
1、使用vi進入一般模式
[root@linux ~
]# vi test.txt
左下角會顯示
"test.txt"
[new file]
2、按i進入編輯模式,左下角會出現
-- insert --
注意:除了esc按鍵之外,其他按鍵都是輸入按鈕
3、按esc按鈕回到一般模式;左下角的insert消失
4、輸入:wq儲存後離開vi
:wq!是強制儲存(在沒有許可權寫入的時候)
二、vi的命令(常用)
一般模式(移動游標)
ctrl+f
螢幕向下移動一頁
ctrl+b
螢幕向上移動一頁
0移動到這一行最前面的字元處
$移動到這一行最後面的字元處
g移動到這個檔案的最後一行
gg移動到這個檔案的第一行,相當於1g?
nn為數字,游標向下移動n行
h 或 向左箭頭鍵(←)
游標向左移動乙個字元
j 或 向下箭頭鍵(↓)
游標向下移動乙個字元
k 或 向上箭頭鍵(↑)
游標向上移動乙個字元
l 或 向右箭頭鍵(→)
游標向右移動乙個字元
注意:若想多次移動,在命令前面加上次數即可一般模式(搜尋與取代)
/word
向游標之下尋找乙個字串名稱為 word 的字串
:n1,n2s/word1/word2/g
n1 與 n2 為數字。在第 n1 與 n2 行之間尋找 word1 這個字串,並將該字串取代為 word2 !
:1,$s/word1/word2/g
從第一行到最後一行尋找 word1 字串,並將該字串取代為 word2
:1,$s/word1/word2/gc
從第一行到最後一行尋找 word1 字串,並將該字串取代為 word2 !且在取代前顯示提示字元給使用者確認 (confirm) 是否需要取代
一般模式(刪除、複製、貼上)
x, x
在一行字當中,x 為向後刪除乙個字元 (相當於 [del] 按鍵), x 為向前刪除乙個字元(相當於 [backspace] 亦即是退格鍵)
dd刪除游標所在的那一整列
nddn 為數字。刪除游標所在的向下 n 列,例如 20dd 則是刪除 20 列
yy複製游標所在的那一行
nyyn 為數字。複製游標所在的向下 n 列,例如 20yy 則是複製 20 列
p, p
p 為將已複製的資料在游標下一行貼上,p 則為貼在游標上一行! 舉例來說,我目前游標在第 20 行,且已經複製了 10 行資料。則按下 p 後, 那 10 行資料會貼在原本的 20 行之後,亦即由 21 行開始貼。但如果是按下 p 呢? 那麼原本的第 20 行會被推到變成 30 行。
u復原前乙個動作
ctrl+r
重做上乙個動作
編輯模式
i, i
插入:在目前的游標所在處插入輸入之文字,已存在的文字會向後退; 其中, i 為『從目前游標所在處插入』, i 為『在目前所在行的第乙個非空格符處開始插入』
a, a
a 為『從目前游標所在的下乙個字元處開始插入』, a 為『從游標所在行的最後乙個字元處開始插入』
o, o
r, r
取代:r 會取代游標所在的那乙個字元;r會一直取代游標所在的文字,直到按下 esc 為止
esc退出編輯模式,回到一般模式中
指令模式
:w將編輯的資料寫入硬碟檔案中
:q離開 vi
:wq儲存後離開,若為 :wq! 則為強制儲存後離開
一般模式–>編輯模式 (當你按下i、i、a、a、o、o時)
編輯模式–>一般模式 (按兩下esc鍵)
一般模式–>命令模式 (輸入冒號就進入了命令模式)
命令模式–>一般模式 (按下回車鍵就可以了)
Handler處理器的使用
importurllib.request importurllib.parse request封裝 對url的高階定製opener封裝 對請求過程的高階定製urllib.request.urlopen opener封裝需要依賴於乙個handler物件handle是乙個類,提供httphandle h...
音訊處理器的使用
流程 聲源 麥克風 音訊處理器 經過音訊處理器中的功率放大 揚聲器。首先是對音訊處理器的各個介面的功能有一定的掌握了解,在前端我們可以看到的是它的兩個旋鈕,乙個是控制麥克風的音量,另乙個是控制揚聲器的音量,中間的按鈕是靜音,彈起取消靜音 前端的最後乙個就是音訊處理器的開關。在它的後端,從右至左依次是...
物理處理器與邏輯處理器
記錄解決方案,自己實際處理過,方案可用,在自己的部落格中記錄一下。cpu central processing unit 是 處理單元,本文介紹物理cpu,物理cpu核心,邏輯cpu,以及他們三者之間的關係。乙個物理cpu可以有1個或者多個物理核心,乙個物理核心可以作為1個或者2個邏輯cpu。物理c...