我用 vi 開啓某個文件後,要在第 34 行向右移動 15 個字符,應該在一般命令模式中執行什麼命令?
34G
15→
在 vi 打開的文件中,如何去到該文件的頁首或頁尾?
1G 或 gg // 回到頁首
G // 回到頁尾
在 vi 打開的文件中,如何在光標所在的行中,移動到行頭及行尾?
0 // 移到行頭
$ // 移到行尾
vi 的一般命令模式情況下,按下 “r” 有什麼功能?
答:按下小寫的 r 則進入編輯模式中的替換模式,可替換一個字符
在 vi 的環境中,如何將目前正在編輯的文件另存爲新文件名 newfilename?
:w newfilename
在 Linux 下面最常用的文本編輯器 vi,請問如何進入編輯模式?
答:按下 i, I, a, A, o, O, r, R 都可進入對應的編輯模式
在 vi 軟件中,如何由 編輯模式返回一般命令模式?
答:按下鍵盤上的 Esc 鍵即可
在 vi 環境中,若上下左右鍵無法使用時,請問如何在一般命令模式移動光標?
答:上下左右鍵可以用 k, j, h, l 代替
在 vi 的一般命令模式中,如何刪除一行、n 行;如何刪除一個字符?
dd // 刪除一行
ndd // 刪除 n 行
x/X // 向後/向前刪除一個字符
在 vi 的一般命令模式中,如何複製一行、n 行並加以粘貼?
yy // 複製一行
nyy // 複製 n 行
p/P // 向光標之下/上的行粘貼複製的數據
在 vi 的一般命令模式中如何查找 string 這個字符串?
/string // 向下查找
?string // 向上查找
在 vi 的一般命令模式中,如何替換 word1 成爲 word2,而若需要用戶確認機制,又該如何呢?
:1,$s/word1/word2/g
:1,$s/word1/word2/gc // 添加用戶確認機制
在 vi 目前的編輯文件中,在一般命令模式下,如何讀取一個文件進來?
:r filename
在 vi 的一般命令模式中,如何保存、退出、保存後退出、強制保存後退出?
:w // 保存
:q // 退出
:wq // 保存並退出
:wq! // 強制保存並退出
在 vi 下面做了很多的編輯操作之後,卻還想還原成原來的文件內容,應該怎麼進行?
答:在一般命令模式下不斷按 u 來進行恢復操作或者輸入 :q! 強制退出不保存,然後重新打開文件
我在 vi 這個程序當中,不想退出 vi, 但是想執行 ls /home 這個命令,vi 有什麼額外的功能可以達到這個目的?
:! ls /home
實踐題部分
在第 7 章的情景模擬題二的第五點,編寫 /etc/fstab 時,當時使用 nano 這個命令,請嘗試使用 vim 去編輯 /etc/fstab,並且將第 7 章新增的那一行的 defaults 改成 default,會出現什麼狀態?退出前請務必要修改成原本正確的信息。此外,如果將該行註釋掉(最前面加 # ),你會發現字體顏色也有變化。
嘗試在你的系統中,你習慣使用的那個賬號的家目錄下,將本章介紹的 vimrc 內容進行一些常用設置,包括:
- 設置查找高亮度反白
- 設置語法檢驗啓動
- 設置默認打開行號顯示
- 設置有兩行狀態欄(一行狀態 + 一行命令行):set laststatus=2
vim /etc/fstab
:1,$s/defaults/default/gc // 狀態欄顯示 4 次替換
uuuu
:q!
cd
vim .vimrc
i
set hlsearch // 設置查找高亮度反白
syntax on // 設置語法檢驗啓動
set nu // 設置默認打開行號顯示
set ruler // 設置顯示右下角狀態欄
set showmode // 設置顯示左下角狀態欄
[Esc]
:wq