在指令模式下使用者輸入的任何字元都被 vi 當作指令加以解釋執行,使用“文本修改指令”可以将 vi 切換到文本輸入模式,這時使用者輸入的字元将被當作是文本内容。文本修改指令有以下幾種。
i 指令将文本插入到光标所在位置前。此時 vi 處于文本插入狀态,螢幕最下行顯示 “--INSERT--”說明資訊。下面執行個體示範了使用 i 指令插入文本。
hello world
光标位于 w 之上,要在其前面插入。
real-
使用 i 指令,并輸入相應文本後,螢幕顯示如下:
hello real-world
I 指令将文本插入目前行的行首。當輸入 I 指令後,光标自動移到該行的行首。下面執行個體示範了使用 I 指令插入文本。
光标同樣位于 w 的之上,要在其前面插入。
使用 I 指令,并輸入相應文本後,螢幕顯示如下:
real-hello world
a 指令将新文本追加到光标目前所在位置之後。下面示例示範了使用 a 指令追加文本。
光标位于“ ”(空格字元)之上,要在其後面追加。
使用 a 指令,并輸入相應文本後,螢幕顯示如下:
A 指令将新文本追加到所在行的行尾。當輸入 A 指令後,光标自動移到該行的行尾。下面示例示範了使用 A 指令追加文本。
使用 A 指令,并輸入相應文本後,螢幕顯示如下:
hello worldreal-
若使用者希望在某行之前或某行之後插入一些新行,則應使用 o 指令。
o 指令将在光标所在行的下面插入一個空行,并将光标置于該行的行首。
O 指令在光标所在行的上面插入一個空行,并将光标置于該行的行首。
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLicmbw5iMyEmNxITN5czNhJWZlZ2NyczNiNmY3YGNhR2MiRjN48CX0AzLcFDMxIDMy8CXn9Gbi9CXzV2Zh1WavwVbvNmLvR3YxUjL3M3Lc9CX6MHc0RHaiojIsJye.png)