Linux——vi的使用,linuxvi

來源:互聯網
上載者:User

Linux——vi的使用,linuxvi

記錄一下vi的一些使用指令,藍色部分是比較常用的,其中使用過的重新進行了描述,極少部分是未使用過的,還有一些未使用也未記錄進來,後續再來補充修正:

參考資料:http://cn.linux.vbird.org/linux_basic/0310vi_2.php

vi分三種模式:一般模式、編輯模式、指令列命令模式,作用如下:一般模式:

  以vi 開啟一個文檔就直接進入一般模式了即預設模式,在此模式中,可以使用 【上、下、左、右】按鍵來移動游標,可以使用 【刪除字元】或【刪除整行】來處理內容,也可以使用【複製、粘貼】來處理檔案資料。

編輯模式:

  在預設模式中,可以進行刪除、複製、粘貼等操作,但是無法編輯檔案內容,要等按下【i,I,o,O,a,A,r,R】等任何一個字母之後才會進入編輯模式。通常在Linux中,按下這些按鍵的時候,在畫面的左下方會出現【INSERT 或 REPLACE】等字樣,此時才可以進行編輯。如果要退出編輯模式,回到預設模式,按下[ESC]按鍵即可。

指令列命令模式:

  在預設模式中,輸入【:/?】三個中的任何一個,就可以將游標移動到最底下的那一行。在這個模式中,可以提供你【搜尋資料】的動作,讀取、存檔、大量取代字元、離開vi、顯示行號等等的動作則是在此模式中達成的。

註:一般模式即預設模式可與編輯模式及指令列命令模式切換,但編輯模式與指令列命令模式之間不可互相切換。

按鍵說明:一般模式可用的按鈕說明,游標移動、複製粘貼、搜尋取代等:移動游標的方法:

h 或 向左方向鍵   : 游標向左移動一個字元,多次移動,【h 或 向左方向鍵】前加要移動的次數,比如,5h ,向左移動5個字元。

j  或 向下方向鍵  :  游標向下移動一行,多行移動,【j 或 向下方向鍵】前加要移動的行數,比如,10j,向下移動10行。

k 或 向上方向鍵   :   游標向上移動一行,多行移動,【k或 向上方向鍵】前加要移動的行數,比如,16k,向上移動16行。

l  或 向右方向鍵  :  游標向右移動一個字元,多次移動,【l  或 向右方向鍵】前加要移動的次數,比如,10l,向右移動10個字元。

【CTRL】+【f】 :  螢幕向下移動一頁,相當於【Page Down】按鍵。

【CTRL】+【b】:  螢幕向上移動一頁,相當於【Page Up】按鍵。

【CTRL】+【d】:  螢幕向下移動半頁。

【CTRL】+【u】:  螢幕向上移動半頁。

+        : 游標移動到非空格符的下一列。

-             : 游標移動到非空格符的上一列。

n<space>   :   n 表示數字。按下數字後再按下空格鍵,游標會向右移動到這一行的第n個字元。

註:n<space>與 h、l 在Centos6.8中的區別在於,前者:如果移動的字元超過該行另起一行繼續移動剩餘的字元,後者則不會。

0或【HOME】鍵 :  數字0,移動到這一行的最前面字元處。

$或【END】鍵    :  移動到這一行的最後面字元處。

H           :  游標移動到當前螢幕的最上方那一行的第一個字元處。  

M             :   游標移動到當前螢幕的中央一行的第一個字元處。

L          :   游標移動到當前螢幕的最下方一行的第一個字元處。

G             : 移動到當前文檔的最後一行。

nG       : n為數字,移動到當前文檔的第n行。

gg        : 移動到當前文檔的第一行。

n<ENTER>     :  n為數字,游標向下移動n 行。

搜尋與取代:

/word  :  在游標之下【向下】尋找一個名為word的字串。定位到第一個該單詞出現的位置處。

?word  :  在游標之上【向上】尋找一個名為word的字串。定位到第一個該單詞出現的位置處。

n    :  n,英文按鍵,重複前一個搜尋的動作。繼續執行搜尋。

N     :  N,英文按鍵,反向重複前一個搜尋的動作。反向繼續執行搜尋。

:n1,n2s/world1/word2/g  :  n1與n2是數字,在第n1到n2之間尋找world1字串,並將該字串替換為word2.

:1,$s/world1/word2/g    :  從第一行到最後一行尋找字串world1,並將該字串替換為word2。全域替換。

:1,$s/world1/word2/gc    :  從第一行到最後一行尋找字串world1,並將該字串替換為word2,替換之前提示使用者是否確認替換。全域替換,提示是否替換。

刪除、複製、粘貼:

x,X  :  在一行字當中,x 向後刪除一個字元,相當於【DEL】鍵,X 向前刪除一個字元,相當於【BACKSPACE】鍵。

nx   :  n為數字,連續向後刪除n個字元。

dd   :  刪除游標所在行一整行。

ndd   :  n數字,刪除游標所在行向下n行。包括游標所在行。

d1G    :  刪除游標所在行到第一行的所有資料。包括游標所在行。

dG  :  刪除游標所在行到最後一行的所有資料.包括游標所在行。

d$  :  刪除游標所在處到該行的最後一個字元。

d0  :  0數字0,刪除游標所在處,到該行的最前面的一個字元。

yy  :  複製游標所在那一行的內容

nyy  :  n為數字,複製游標所在行向下n行資料,包括游標所在行。      

y1G   :  複製游標所在行到第一行的所有資料。

yG   :  複製游標所在行到最後一行的所有資料。

y0   :  複製游標所在處字元到該行行首的所有資料。

y$   :  複製游標所在處字元到該行行末的所有資料。

p   :  將已複製的資料在游標所在下一行粘貼。

P   :  將已複製的資料在游標所在上一行粘貼。

u   :  複原上一個動作。

[ctrl]+r: 重做上一個動作。

.   :  小數點,重複前一個動作。

一般模式切換到編輯模式可用按鈕:

i,I  :  進入編輯模式進行插入操作,i在游標所在處插入,I 游標所在行第一個非空格符處開始插入。

a,A  :  進入編輯模式進行插入操作,a游標所在的下一個字元處開始插入,A游標所在行最後一個字元處開始插入。

o,O  :  進入編輯模式進行插入操作,小寫英文字母o當前游標所在行後插入新的一行,大寫字母O當前游標所在行前插入新的一行。

r,R   :  進入編輯模式進行取代操作,r替換游標所在的字元一次,R替換游標所在的字元,直到【ESC】為止。

註:進入編輯模式, vi畫面的左下角會出現【--INSERT--】或【--REPLACE--】的字樣。

[ESC]:  退出編輯模式,進入一般模式中。

 一般模式切換到指令列模式可用按鈕:指令列的儲存、離開等指令:

:w        :  將編輯的資料寫入硬碟文檔中。

:wq        :  儲存後離開。:wq!強制儲存後離開

:q            :  離開vi

:q!         :  強制離開且不儲存文檔修改過的內容。

ZZ         :  若文檔有改動,則儲存後離開,若未改動,則不儲存離開。

:w[filename]    :  將編輯的資料存放區為另一個文檔

vim環境的變更:

:set nu    :  顯示行號。

:set nonu    :  取消行號。

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.