搜尋
首頁運維linux運維Linux怎麼使用vi文字編輯器

Linux怎麼使用vi文字編輯器

May 29, 2023 pm 02:41 PM
linuxvi

一.vi文本编辑器

配置文件是Linux操作系统的显著特征之一,其作用有点类似于Windows操作系统中的注册表,只不过注册表是集中管理,而配置文件采用了分散的自由管理方式。

1.使用vi文本编辑器

vi是一个功能强大的全屏幕文本编辑工具,一直以来都作为类UNIX操作系统的默认文本编辑器,vim是vi文本编辑器(简称vi编辑器)的增强版本,在vi编辑器的基础上扩展了很多实用的功能,但是习惯上也将vim称为vi,为了使用方便,可以设置一个命令别名,将vi指向vim程序(本文中以vim程序为例)具体操作如下:

[root@localhost ~]# alias vi='/usr/bin/vim'
[root@localhost ~]# which -a vi vim

2.vi编辑器的工作模式

vi编辑器是工作在字符终端环境下的全屏幕编辑器,因此编辑界面相对比较简单,没有为用户提供鼠标操作和菜单系统,而是通过按键命令实现相应的编辑和操作功能,在v编辑界面中可以使用三种不同的工作模式,即命令模式,输入模式和末行模式,在不同的模式中能够对文件进行的操作也不相同。

命令模式:启动vi编辑器后默认进入命令模式。在该模式下,你可以执行光标移动、字符串查找、删除、复制、粘贴文件内容等相关操作。主要操作为录入文件内容的输入模式,可对文本文件正文进行修改或添加新内容。在 vi 编辑器的输入模式下,最后一行会显示状态提示信息“--INSERT--”。在末行模式下,可以配置vi编辑器的环境、保存文件、退出编辑器,并进行文件内容的查找、替换等操作。处于末行模式时,vi编辑器的最后一行会出现冒号”:”提示符。

在vi编辑环境中,有三种状态,分别是命令模式、输入模式和末行模式。通过按下不同的键可以在这些状态之间进行切换。例如,从命令模式按:(冒号)键可以进入末行模式,按a,i,o等键可以进入输入模式:在输入模式、末行模式均可按Esc键返回命令模式,如图所示。

Linux怎麼使用vi文字編輯器

 认识了vi编辑器的不同编辑模式(状态)以后,下面分别介绍在命令模式、末行模式中的常见操作方法(输入模式用于录入文本内容,不做特别介绍)。

3.命令模式中的基本操作

通过执行单独的“vi”命令,您可以进入v编辑器的命令模式,并查看相关版本信息,如下图所示。但更常见的使用方法是指定要编辑的文件名作为参数,若该文件不存在,则vi根据该文件名称打开一个新的空文件。

Linux怎麼使用vi文字編輯器

 在学习vi编辑器的基本操作时,建议复制一个内容较多的系统配置文件进行练习,而不要直接去修改系统文件,以免发生失误造成系统故障。

例如以下操作把系统配置文件/etc/yum.conf复制为当前目录下的vitest.file文件,然后用vi编辑器打开vitest.file文件进行编辑。

[root@localhost ~]# cp /etc/yum.conf ./vitest.file
[root@localhost ~]# vi vitest.file

在vi编辑器的命令模式中,可以输入特定的按键(称为vi操作命令注意区别于Linux操作系统命令)进行操作,主要包括模式切换、光标移动、复制、删除、粘贴、文件内容查找及保存和退出等操作,这里只介绍一些最基本且常用的按键命令。

(1)模式切换

在命令模式中,按a.i.o等键可以快速切换至输入模式,同时确定插入点的方式和位置,以便录入文件内容,需要返回命令模式时,按Esc键即可。常见的几个模式切换键及其作用如下。

a:在当前光标位置之后插入内容。A:在光标所在行的末尾(行尾)插入内容。i:在当前光标位置之前插入内容。I:在光标所在行的开头(行首)插入内容。o:在光标所在行的后面插入一个新行。O:在光标所在行的前面插入一个新行。

(2)移动光标

光标方向的移动,直接按↑,↓,←,→一西个方向键完成相应的光标移动。

题页移动

按Page Dewn键或Crl F组合键向下期动一整页内容。
技Pagt lip或Cr1 8组合键向上翻动一整页内容。

行内快速跳转

按Horme键成“键,散字0键将元标快速鹏转到本行的行首。接End键或1键将光标快速跳转到本行的行尾。在上述按键操作中,PageDown,Pagn Up,homm,End及方向键同样也可在w的输入模式中使用。

入行间快速跳转

使用按鍵指令1G或0可跳到檔案內容的第1行。使用按鍵指令G可跳到檔案的最後一行。按下鍵盤上的特定按鍵,可以將遊標移到所選檔案的某一行(將「二」以數字取代)。

為了方便查看行間期轉效果,這裡先學習如何在v編輯器中是示行號,只要切換到末行模式並
執行如下的”set cu」指令即可顯示行號,執行"set nonu"指令可以取消量示行號.

Linux怎麼使用vi文字編輯器

# 顯示行號後的vi編輯器介面顯示格式如下(每行開頭的數字即行號):

Linux怎麼使用vi文字編輯器

(3)複製、貼上和刪除

#刪除動作。

您可以按下「乘」鍵或「刪除」鍵來刪除遊標所在位置的單一字元。使用按鍵指令dd刪除目前遊標所在行,使用#dd的形式也可以刪除從遊標處開始的#行內容(其中「#」號以具體數字取代)。使用按鍵指令d刪除目前遊標之前到行首的所有字元。使用按鍵指令ds刪除目前遊標處到行尾的所有字元。

複製操作,使用按鍵指令Yy複製目前行整行的內容到剪貼簿,使用#Yy的形式還可以複製從遊標處開始的#行內容(其中「#」號用具體數字替換).複製的內容需要貼上後才能使用。

貼上操作。在vi編輯器中,前一次被刪除或複製的內容將會儲存到剪下板緩衝區中,按p鍵即可將緩衝區中的內容貼上到遊標位置處之後,按P鍵則會貼上到遊標位置處之前。

(4)查找檔案內容

在命令模式中,按/鍵後可以輸入指定的字串,從目前遊標處開始向後進行查找(按?鍵則向前尋找).完成查找後可以按n、N鍵在不同的查找結果中進行選擇,例如,輸入“/yum”,按Enter鍵後將查找出文件中的“yum”字串並高亮顯示,遊標自動移動至第一個查找結果處,按n鍵可以移動到下一個查找結果,如圖所示。

Linux怎麼使用vi文字編輯器

(5)撤銷編輯及儲存和退出

在編輯檔案內容時,有時需要對一些錯誤的編輯操作進行撤銷,這時可以使用按鍵u,U鍵,其中,u鍵指令用於取消最近一次的操作,並恢復操作結果,可以多次重複按υ鍵恢復已進行的多步驟操作;U鍵指令用於取消對目前行所做的所有編輯。按下ZZ鍵可以同時儲存目前檔案的變更並退出Vi編輯器。

4.末行模式中的基本操作

在命令模式中按:鍵可以切換到末行模式,vi編輯器的最後一行中將顯示」:提示符,用戶可以在該提示符號後輸入特定的末行命令,完成如保存文件,退出編輯器,打開新文件,讀取其他文件內容及字符串替換等豐富的功能操作。

 (1)儲存檔案及退出vi編輯器

儲存文件,對文件內容進行修改並確認以後,需要執行如下的「w」指令進行儲存。

Linux怎麼使用vi文字編輯器

若需要另存為其他文件,則需要指定新的文件名,必要時還可以指定文件路徑。

#例如,執行如下的「:w/root/newfile操作將把目前編輯的檔案另存到/root 目錄下,檔案名稱為newfile. 

Linux怎麼使用vi文字編輯器

#退出編輯器。需要退出vi編輯器時,可以執行“:q命令,若文件內容已經修改卻沒有保存,則僅使用”;q”命令將無法成功退出,這時需要使用如下的”q! 」指令強行退出(不儲存​​即退出)。

Linux怎麼使用vi文字編輯器

儲存並退出。既要儲存檔案又要退出vi編輯器可以使用一條末行指令“:wq”或「:x」實現,其效果與指令模式中的ZZ指令相同,具體操作如下: 

Linux怎麼使用vi文字編輯器

#(2)開啟新檔案或讀入其他檔案內容 

開啟新的檔案進行編輯。當使用目前的vi 編輯器並執行":e新的檔案"這樣的末行指令時,你可以編輯(Edit)一個新檔案。

例如,執行如下的‘:e~/initial-setup-ks.cfg」操作將直接開啟目前使用者宿主目錄中的initial-setup-ks.cfg檔案進行編輯。

#:e ~/initial-setup-ks.cfg

在目前檔案中讀入其他檔案內容,執行「r其他檔案」形式的末行指令可以讀入(Read)其他檔案中的內容,並將其複製到目前遊標所在位置。

例如,執行如下的「r/etc/filesystems操作將把系統檔案/etc/filesystems中的內容複製到目前檔案中。

:r /etc/filesystems

 (3)取代檔案內容

在vi編輯器的末行模式中,能夠將檔案中特定的字串替換成新的內容,當需要大量修改相同內容時,使用替換功能將大大提高編輯效率,使用替換功能時的末行命令格式如下:

:[替換範圍] sub/舊的內容/新的內容[/g]

在上述替換格式中,主要關鍵字為sb(Substitute,替換)。也可以簡寫為s.替換範圍是可選部分,默認時只對目前行內的內容進行替換,一般可以表示為以下兩種形式。

%:在整個文件內容中進行尋找並取代。 n.m;在指定行數範圍內的文件內容中進行尋找並取代。

替換格式中最末尾的/g部分也是可選內容,表示對替換範圍內每一行的所有匹配結果都進行替換,省略/g時將只替換每行中的第一個匹配結果。

例如,若要將文件中第5行~第15行中的“initdefault”字串替換為“DEFAULT”,可以執行以下操作:

:5, 15 s /initdefault/DEFAULT/g

當需要對整個文檔範圍進行查找替換操作時,需要使用“%”符號表示全部,例如,以下操作將會把當前文件中所有的“ initdefault」字串替換為「bootdefault」

:% s /initdefault/bootdefault/g

以上是Linux怎麼使用vi文字編輯器的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文轉載於:亿速云。如有侵權,請聯絡admin@php.cn刪除
Linux操作:網絡和網絡配置Linux操作:網絡和網絡配置Apr 27, 2025 am 12:09 AM

Linux網絡配置可以通過以下步驟完成:1.配置網絡接口,使用ip命令臨時設置或編輯配置文件持久化設置。 2.設置靜態IP,適合需要固定IP的設備。 3.管理防火牆,使用iptables或firewalld工具來控製網絡流量。

Linux中的維護模式:系統管理員指南Linux中的維護模式:系統管理員指南Apr 26, 2025 am 12:20 AM

維護模式在Linux系統管理中扮演關鍵角色,幫助進行系統修復、升級和配置變更。 1.進入維護模式可以通過GRUB菜單選擇或使用命令“sudosystemctlisolaterescue.target”。 2.在維護模式下,可以執行文件系統修復和系統更新等操作。 3.高級用法包括重置root密碼等任務。 4.常見錯誤如無法進入維護模式或掛載文件系統,可通過檢查GRUB配置和使用fsck命令修復。

Linux中的維護模式:何時以及為什麼使用它Linux中的維護模式:何時以及為什麼使用它Apr 25, 2025 am 12:15 AM

使用Linux維護模式的時機和原因:1)系統啟動問題時,2)進行重大系統更新或升級時,3)執行文件系統維護時。維護模式提供安全、控制的環境,確保操作的安全性和效率,減少對用戶的影響,並增強系統的安全性。

Linux:基本命令和操作Linux:基本命令和操作Apr 24, 2025 am 12:20 AM

Linux中不可或缺的命令包括:1.ls:列出目錄內容;2.cd:改變工作目錄;3.mkdir:創建新目錄;4.rm:刪除文件或目錄;5.cp:複製文件或目錄;6.mv:移動或重命名文件或目錄。這些命令通過與內核交互執行操作,幫助用戶高效管理文件和系統。

Linux操作:管理文件,目錄和權限Linux操作:管理文件,目錄和權限Apr 23, 2025 am 12:19 AM

在Linux中,文件和目錄管理使用ls、cd、mkdir、rm、cp、mv命令,權限管理使用chmod、chown、chgrp命令。 1.文件和目錄管理命令如ls-l列出詳細信息,mkdir-p遞歸創建目錄。 2.權限管理命令如chmod755file設置文件權限,chownuserfile改變文件所有者,chgrpgroupfile改變文件所屬組。這些命令基於文件系統結構和用戶、組系統,通過系統調用和元數據實現操作和控制。

Linux中的維護模式是什麼?解釋了Linux中的維護模式是什麼?解釋了Apr 22, 2025 am 12:06 AM

MaintenancemodeInuxisAspecialBootenvironmentforforcalsystemmaintenancetasks.itallowsadMinistratorStoperFormTaskSlikerSettingPassingPassingPasswords,RepairingFilesystems,andRecoveringFrombootFailuresFailuresFailuresInamInimAlenimalenimalenrenmentrent.ToEnterMainterMainterMaintErmaintErmaintEncemememodeBoode,Interlecttheboo

Linux:深入研究其基本部分Linux:深入研究其基本部分Apr 21, 2025 am 12:03 AM

Linux的核心組件包括內核、文件系統、Shell、用戶空間與內核空間、設備驅動程序以及性能優化和最佳實踐。 1)內核是系統的核心,管理硬件、內存和進程。 2)文件系統組織數據,支持多種類型如ext4、Btrfs和XFS。 3)Shell是用戶與系統交互的命令中心,支持腳本編寫。 4)用戶空間與內核空間分離,確保系統穩定性。 5)設備驅動程序連接硬件與操作系統。 6)性能優化包括調整系統配置和遵循最佳實踐。

Linux體系結構:揭示5個基本組件Linux體系結構:揭示5個基本組件Apr 20, 2025 am 12:04 AM

Linux系統的五個基本組件是:1.內核,2.系統庫,3.系統實用程序,4.圖形用戶界面,5.應用程序。內核管理硬件資源,系統庫提供預編譯函數,系統實用程序用於系統管理,GUI提供可視化交互,應用程序利用這些組件實現功能。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )專業的PHP整合開發工具

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

MantisBT

MantisBT

Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能