1. 首先,我們使用快捷鍵ctrl+alt+t打開終端。

image.png
2. 然后使用命令
vi ~/.bash_profile
打開bash_profile文件

image.png
1. 我們使用方向鍵,將光標(biāo)移動(dòng)到要插入內(nèi)容的上一行“Allow from all”的末尾。
2. 然后輸入命令“o”。是字母o,作用是在當(dāng)前光標(biāo)末尾插入一新行。
3. 如果輸入錯(cuò)誤,我們可以使用“dd”命令,刪除當(dāng)前整行內(nèi)容。
4. 插入新行之后,我們就可以復(fù)制要插入的內(nèi)容然后粘貼。
5. 之后按esc鍵,退出插入模式即可進(jìn)入命令模式。
6. 在末尾輸入":wq" 即可寫入保存并離開 vi。

image.png
3. 最后,附帶上vi的詳細(xì)命令介紹:
- 進(jìn)入vi的命令
| 命 令 | 解 釋 |
|---|---|
| vi filename | 打開或新建文件,并將光標(biāo)置于第一行首 |
| vi +n filename | 打開文件,并將光標(biāo)置于第n行首 |
| vi + filename | 打開文件,并將光標(biāo)置于最后一行首 |
| vi +/pattern filename | 打開文件,并將光標(biāo)置于第一個(gè)與pattern匹配的串處 |
| vi -r filename | 在上次正用vi編輯時(shí)發(fā)生系統(tǒng)崩潰,恢復(fù)filename |
| vi filename….filename | 打開多個(gè)文件,依次進(jìn)行編輯 |
- 移動(dòng)光標(biāo)類命令
| 命 令 | 解 釋 |
|---|---|
| h | 光標(biāo)左移一個(gè)字符 |
| l | 光標(biāo)右移一個(gè)字符 |
| space | 光標(biāo)右移一個(gè)字符 |
| Backspace | 光標(biāo)左移一個(gè)字符 |
| k或Ctrl+p | 光標(biāo)上移一行 |
| j或Ctrl+n | 光標(biāo)下移一行 |
| Enter | 光標(biāo)下移一行 |
| w或W | 光標(biāo)右移一個(gè)字至字首 |
| b或B | 光標(biāo)左移一個(gè)字至字首 |
| e或E | 光標(biāo)右移一個(gè)字至字尾 |
| } | 光標(biāo)移至段落開頭 |
| { | 光標(biāo)移至段落結(jié)尾 |
| nG | 光標(biāo)移至第n行首 |
| n+ | 光標(biāo)下移n行 |
| n- | 光標(biāo)上移n行 |
| n$ | 光標(biāo)移至第n行尾 |
| H | 光標(biāo)移至屏幕頂行 |
| M | 光標(biāo)移至屏幕中間行 |
| L | 光標(biāo)移至屏幕最后行 |
| 0 | (注意是數(shù)字零)光標(biāo)移至當(dāng)前行首 |
| $ | 光標(biāo)移至當(dāng)前行尾 |
- 屏幕翻滾類命令
| 命 令 | 解 釋 |
|---|---|
| Ctrl+u | 向文件首翻半屏 |
| Ctrl+d | 向文件尾翻半屏 |
| Ctrl+f | 向文件尾翻一屏 |
| Ctrl+b | 向文件首翻一屏 |
| nz | 將第n行滾至屏幕頂部,不指定n時(shí)將當(dāng)前行滾至屏幕頂部 |
- 插入文本類命令
| 命 令 | 解 釋 |
|---|---|
| i | 在光標(biāo)前 |
| I | 在當(dāng)前行首 |
| a | 光標(biāo)后 |
| A | 在當(dāng)前行尾 |
| o | 在當(dāng)前行之下新開一行 |
| O | 在當(dāng)前行之上新開一行 |
| r | 替換當(dāng)前字符 |
| R | 替換當(dāng)前字符及其后的字符,直至按ESC鍵 |
| s | 從當(dāng)前光標(biāo)位置處開始,以輸入的文本替代指定數(shù)目的字符 |
| S | 刪除指定數(shù)目的行,并以所輸入文本代替之 |
| ncw或nCW | 修改指定數(shù)目的字 |
| nCC | 修改指定數(shù)目的行 刪除命令 |
| ndw或ndW | 刪除光標(biāo)處開始及其后的n-1個(gè)字 |
| do | 刪至行首 |
| d$ | 刪至行尾 |
| ndd | 刪除當(dāng)前行及其后n-1行 |
| x或X | 刪除一個(gè)字符 |
| x | 刪除光標(biāo)后的,而X刪除光標(biāo)前的 |
| Ctrl+u | 刪除輸入方式下所輸入的文本 搜索及替換命令 |
| /pattern | 從光標(biāo)開始處向文件尾搜索pattern |
| ?pattern | 從光標(biāo)開始處向文件首搜索pattern |
| n | 在同一方向重復(fù)上一次搜索命令 |
| N | 在反方向上重復(fù)上一次搜索命令 :s/p1/p2/g:將當(dāng)前行中所有p1均用p2替代 :n1,n2s/p1/p2/g:將第n1至n2行中所有p1均用p2替代 :g/p1/s//p2/g:將文件中所有p1均用p2替換 |
- 選項(xiàng)設(shè)置
| 命 令 | 解 釋 |
|---|---|
| all | 列出所有選項(xiàng)設(shè)置情況 |
| term | 設(shè)置終端類型 |
| ignorance | 在搜索中忽略大小寫 |
| list | 顯示制表位(Ctrl+I)和行尾標(biāo)志 |
| ($) number | 顯示行號(hào) |
| report | 顯示由面向行的命令修改過的數(shù)目 |
| terse | 顯示簡(jiǎn)短的警告信息 |
| warn | 在轉(zhuǎn)到別的文件時(shí)若沒保存當(dāng)前文件則顯示NO write信息 |
| nomagic | 允許在搜索模式中,使用前面不帶“”的特殊字符 |
| nowrapscan | 禁止vi在搜索到達(dá)文件兩端時(shí),又從另一端開始 |
| mesg | 允許vi顯示其他用戶用write寫到自己終端上的信息 |
| 最后行方式命令 | n1,n2 co n3:將n1行到n2行之間的內(nèi)容拷貝到第n3行下 :n1,n2 m n3:將n1行到n2行之間的內(nèi)容移至到第n3行下 |