Windows XP Windows 7 Windows 2003 Windows Vista Windows教程綜合 Linux 系統教程
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟件教程
 Windows教程網 >> Linux系統教程 >> Linux教程 >> Linux基礎命令小結--vi編輯器

Linux基礎命令小結--vi編輯器

日期:2017/2/7 16:58:26      編輯:Linux教程

  說道命令,就不得不提這個特殊的命令“vi”它不光是命令,還是一個linux下的編輯器。由於時間關系,這裡不在舉例說明,將在以後配置網絡服務時介紹一些vi的實際應用。

  vi命令是linux下的全屏幕文本編輯,vi編輯器提供了豐富的編輯功能。這個編輯器十分簡陋,對於初學者很不友好。但是在linux中vi編輯器作用非常大,以後尤其我們在配置各種服務器時修改配置文件時十分有用。
  vi編輯器有3種模式:命令模式、輸入模式、末行模式。掌握這三種模式十分重要:

  命令模式:vi啟動後默認進入的是命令模式,從這個模式使用命令可以切換到另外兩種模式,同時無論在任何模式下只要按一下[Esc]鍵都可以返回命令模式。在命令模式中輸入字幕“i”就可以進入vi的輸入模式編輯文件。

  輸入模式:在這個模式中我們可以編輯、修改、輸入等編輯工作,在編輯器最後一行顯示一個“--INSERT--”標志著vi進入了輸入模式。當我們完成修改輸入等操作的時候我們需要保存文件,這時我們需要先返回命令模式,在進入末行模式保存。

  末行模式:在命令模式輸入“:”即可進入該模式,在末行模式中有好多好用的命令。

  1.vi的啟動和退出

  直接輸入命令vi不指定文件名,由於這是一個沒有命名的空文件,顯示了vi的版本信息。

  vim是vi編輯器的改進版本,在vi編輯器的基礎上擴展了很多實用的功能。大多數linux/unix版本都使用vim代替了原有的vi編輯器。或者直接使用vi打開文件,如果文件存在打開存在文件;如果不存在的話,將以我們指定的參數作為文件名。

   輸入q!是強制退出,同時沒有保存當前文件內容。如果文件沒有進行修改,或者已經保存完畢也可以使用q退出。保存退出使用wq,保存強制退出wq!

  2.保存文件

  如果文件已經有文件名,我們在末行模式直接輸入w保存,如果沒有文件名,輸入w 文件名進行保存。例如:w test其中test是文件名。

  那麼在vi中也可以另存為,就是在保存完以後,我們再使用w 另存為文件名。

  3.光標的移動

  在命令模式中可以使用命令進行以下操作。

光標方向的移動,除了可以使用方向鍵,還可以使用以下命令
                     向上移動光標:k
  向左移動光標:h                                            向右移動光標:l
                     向下移動光標:j
翻頁命令
     Ctrl+F向前翻整頁            Ctrl+U向前翻半頁
     Ctrl+B向後翻整頁            Ctrl+D向後翻半頁
行內快數跳轉
     ^移動到本行行首
     $移動到本行行尾
顯示行號和取消行號(末行模式使用)
      set nu顯示行號
      set nonu取消行號
在命令模式下,使用以下命令可以快速的在行間跳轉
     1G跳轉到文件首行
     G跳轉到尾行
     #G跳轉到文件的#行
4.編輯操作
進入輸入模式命令
   i插入命令    a附加命令      o打開命令     c修改命令
   r取代命令    s替換命令      Esc退出命令
輸入模式的操作
     Home光標到行首
     End  光標到行尾
     Page Up和Page Down上下翻頁
     Delect刪除光標位置的字符
刪除操作(命令模式使用)
      x刪除光標處的單個字符
      dd刪除光標所在行
      dw刪除當前字符到單詞尾包括空格的所有字符
      #x例如3x刪除光標處向右的三個字符
      #dd例如3dd從當前行開始向下刪除三行文本
撤銷操作
       u命令取消最近一次的操作,可以使用多次來恢復原有的操作
       U取消所有操作
       Ctrl+R可以恢復對使用u命令的操作
復制操作
      yy命令復制當前整行的內容到vi緩沖區
      yw復制當前光標所在位置到單詞尾字符的內容到vi緩存區,相當於復制一個單詞
      y$復制光標所在位置到行尾內容到緩存區
      y^復制光標所在位置到行首內容到緩存區
      #yy例如:5yy就是復制5行
      #yw例如:2yw就是復制兩個單詞
   如果要復制第m行到第n行之間的內容,可以在末行模式中輸入m,ny例如:3,5y復制第三行到第五行內容到緩存區
5.查找和替換
      vi的查找和替換功能主要在末行模式完成:
至上而下的查找
      / 要查找的字符竄,其中/代表從光標所在位置起開始查找,例如:/ work
至下而上的查找
   ?要查找的字符竄  例如:/ work
替換
      :s/old/new用new替換行中首次出現的old
      : s/old/new/g 用new替換行中所有出現的old
      :#,# s/old/new/g用new替換從第#行到第#行中出現的old
   :% s/old/new/g用new替換整篇中出現的old
   如果替換的范圍較大時,在所有的命令尾加一個c命令,強制每個替換需要用戶進行確認,例如:s/old/new/c 或s/old/new/gc
6恢復文件
       vi在編輯某一個文件時,會生成一個臨時文件,這個文件以 . 開頭並以 .swp結尾。正常退出該文件自動刪除,如果意外退出例如忽然斷電,該文件不會刪除,我們在下次編輯時可以選擇一下命令處理:
      O只讀打開,不改變文件內容
      E繼續編輯文件,不恢復.swp文件保存的內容
      R將恢復上次編輯以後未保存文件內容
      Q退出vi
      D刪除.swp文件
   或者使用vi -r 文件名來恢復未保存的內容
   vi命令大致給大家介紹這些,其實它的功能很強大的,我們在日常實際使用過程中不斷積累命令的使用方法,相信大家會很快掌握這個命令的。

Copyright © Windows教程網 All Rights Reserved