講述Linux Vi刪除復制取代和替換等
Vi刪除有很多值得學習的地方,這里我們主要介紹Linux Vi刪除,包括介紹Vi刪除等方面。在命令模式下可以使用Linux Vi刪除提供的各種有關命令對文本進行修改,包括對文本內容的Linux Vi刪除、復制、取代和替換等。
文本Linux Vi刪除
在編輯文本時,經常需要Linux Vi刪除一些不需要的文本,我們可以用
Linux Vi刪除單個字符
x:刪除光標處的字符。若在x之前加上一個數字n,則刪除從光標所在位置開始向右的n個字符。
X:刪除光標前面的那個字符。若在X之前加上一個數字n,則刪除從光標前面那個字符開始向左的n個字符。
顯然這兩個命令是刪除少量字符的快捷方法。
Linux Vi刪除多個字符
dd:刪除光標所在的整行。在dd前可加上一個數字n,表示刪除當前行及其后n-1行的內容。
D或d$:兩命令功能一樣,都是刪除從光標所在處開始到行尾的內容。
d0:刪除從光標前一個字符開始到行首的內容。
dw:刪除一個單詞。若光標處在某個詞的中間,則從光標所在位置開始刪至詞尾。同dd命令一樣,可在dw之前加一個數字n,表示刪除n個指定的單詞。
如果用戶不小心進行了誤Linux Vi刪除操作,也不要緊,Vi提供了恢復誤操作的命令,并且可以將恢復的內容移動,放在文本的任何地方?;謴兔钣?sup2; np,其中n為寄存器號。這是因為Vi內部有9個用于維護刪除操作的寄存器,分別用數字1,2,¼ ,9表示,它們分別保存以往用dd命令刪除的內容。這些寄存器組成一個隊列,例如最近一次使用dd命令刪除的內容被放到寄存器1中;當下次再使用dd命令刪除文本內容時,Vi將把寄存器1的內容轉存到寄存器2中,而寄存器1中又將是最近一次dd命令刪除的內容。以此類推,Linux Vi刪除可以保存有最近九次用dd命令刪除的內容,而前面的用dd命令刪除的內容則被拋棄。
假設當前編輯文件為xu.c
/* this is a example */
#include
void main( ) {
int i , j ;
printf( “ please input a number : / n ” );
scanf ( “ % d ” , &i ) ;
j = i + 100 ;
printf ( “ /n j = % d /n ” , j ) ;
return ;
我們對其進行如下操作:
1. 將光標移至文件***行,按dd命令,此時文件***行的內容被Linux Vi刪除,且被刪除的內容保存在寄存器1中;
2. 按5j使光標下移至***個printf語句行;
3. 按dd命令將該行刪除,此時寄存器1中將保存剛剛被刪除的內容:
printf (“ please input a number :\ n ” );
而寄存器1原有的內容:
/* this is a example */
則被保存到寄存器2中;
在最末行模式下,也可以對文件內容進行Linux Vi刪除,但它只能刪除整行,一次可將某個指定范圍內(起始行號,終止行號)的所有行全部刪除。需要注意的是,用此種方法進行刪除時,Vi并不把所刪內容放入寄存器中,因而當發生誤Linux Vi刪除操作時,不能用² np命令恢復,只能用u命令進行有限的恢復。***提一下,如何在文本輸入方式時將所輸入文本刪除。用戶使用
【編輯推薦】