vi(Visual Editor)常用的命令

来源:http://www.cnblogs.com/qianjinyan/archive/2016/11/17/6072953.html
-Advertisement-
Play Games

任何用戶最常做的事要數創建和編輯文件,包括文檔、報告和文字,vi(Visual Editor)是一個有效而相對簡單的全熒幕編輯,使用vi,只要記著少量基本指令,就可以開始起步,再學習其他更復 雜的指令,而系統管理員則使用vi管理和維護系統。vi是包含在SCO System V作業系統中的全熒幕編輯, ...


任何用戶最常做的事要數創建和編輯文件,包括文檔、報告和文字,vi(Visual Editor)是一個有效而相對簡單的全熒幕編輯,使用vi,只要記著少量基本指令,就可以開始起步,再學習其他更復
雜的指令,而系統管理員則使用vi管理和維護系統。
vi是包含在SCO System V作業系統中的全熒幕編輯,其實,vi不獨存在於SCO UNIX內,而是UNIX內相當普及的文件編輯。開啟文件無論是開啟新檔或修改舊文件,都可以使用vi。
格式:
#vi filename
如果文件是新的,就會在熒幕底部看到一個信息,告訴用戶正在創建新文件。如果文件早已存在,vi則會顯示文件的首24行,用戶可再用游標(cursor)移動文件。
這是執行Vi後的屏幕樣式:


上面是一個經vi開啟的模擬文件,一行開始處的波折號(~)表示文件的結尾。 vi使用了兩種狀態,一是指令態(Command Mode),另一是插入態(Insert Mode)。當vi處於指令態時,打入的內
容會視作指令來解釋;另一方面,當vi處於插入態時,就可以打入正文(text)給文件。
大多數vi指令是單字元,由插入態改變為指令態,按〈Esc〉鍵;而由命令態轉為插入態,則可以使用下麵的插入令,直接打入,無需再按〈Return〉鍵。
l 插入
i 在游標處插入正文
I 在一行開始處插入正文
a 在游標後追加正文
A 在行尾追加正文
o(小寫歐) 在游標下麵新開一行
O(大寫歐) 在游標上面新開一行
要記著一點,在插入態處,不能打入指令,必需先按〈Esc〉鍵,返回指令態。假若戶用不知身處何態,也可以按〈Esc〉鍵,不管處於何態,都會返回指令態。
l 存檔及退出
在修改文件時,如何存檔及退出指定文件都非常重要。在vi內,行使存檔或退出的指令時,要先按冒號(:),改變為指令態,用戶就可以看見在熒幕左下方,出現冒號(:),顯示vi已經改為指
令態,可以進行存檔或退出等工作。
下麵就是一些這方面常用的指令。
:q! 放棄任何改動而退出vi,也就是強行退出
:w 存檔
:wq 存檔並退出vi
:x 與wq的工作一樣
:zz 與wq的工作一樣刪除正文
l 刪除
刪除或修改正文都是利用插入態,故此,下麵所提及的指令只需在插入態內,直接選入指令即行。
x 刪除游標處字元(Character)
nx 刪除游標處後n個字元
nX 刪除游標處前n個字元
ndw 刪除游標處下n個單詞(word)
dd 刪除整行
d$或D 刪除由游標至該行最末
u 恢復前一次所做的刪除
l 修改正文
當使用vi修改正文,加減字元時,就會採用另一組在插入態操作的指令。
— r char由char代替游標處的字元
—Rtext〈Esc〉由text代替游標處的字元
—cwtext〈Esc〉由text取代游標處的單詞
—Ctext〈Esc〉由text取代游標處至該行結尾處
—cc使整行空白,但保留游標位置,讓你開始打入
—如刪除指令一樣,在指令前打入的數,表示執行該指令多少次。
l正文模式檢索
要檢索文件,必需在指令態下進行。所謂「模式」,就是一個特定字元串,其中可含空格符。
/str〈Return〉 向前搜尋str直至文件結尾處
?str〈Return〉 往後搜尋str直至文件開首處
n 同一方向上重覆檢索
N 相反方向上重覆檢索
vi纏繞整個文件,不斷檢索,直至找到與模式相匹配的下一個出現。其他如果要在 vi執行期間,轉到shell執行,使用驚嘆號(!)執行系指令,例如在vi期間,列出當前目錄內容,可以打入:!
If
另一方面,用戶可以在主目錄中創建.exrc環境文件,用set打入選項,每次調用vi時,就會讀入.exrc中的指令與設置。下麵是.exrc環境文件的實例:
set wrapmarging=8
set showmode
set autoindent
set number


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • ftp
    vsftp 1.安裝軟體 yum install vsftpd-y systemctl start vsftpd systemctl stop firewalld |enable firewalld -cmd --list-all firewalld -cmd --add-service=ftp - ...
  • 先決條件:操作前請確認執行了$ sudo apt-get -y install vim的VIM安裝,linux預設只有VI。 vi(vim)是上Linux非常常用的編輯器,很多Linux發行版都預設安裝了vi(vim)。vi(vim)命令繁多但是如果使用靈活之後將會大大提高效率。vi是“visual ...
  • ➠更多技術乾貨請戳:聽雲博客 序言 怎麼在linux 平臺下實現一個類似於mac 平臺下的 atos 工具( iOS 符號化解析)? 分析問題 在github上找到了幾年前的開源實現,[https://github.com/dechaoqiu/atosl](https://github.com/de ...
  • 當Ping 主機名時可以映射出該主機的IP地址,反之亦然。配置並指定DNS伺服器可以快速部署集群,不需要每台主機都去修改HOSTS文件即可實現IP與主機名的相互解析。而在Linux下的DNS是用bind來實現的。 環境: 機器IP 機器名稱 用途 10.190.60.5 hadoop01.ftgov ...
  • 每一部主機都有自己的路由表 封包到下一個路由器 下一個路由器的路由表來傳送 traceroute 查看封包在各路由的流向 一:路由表產生的類型 1.依據網路介面產生的 IP 而存在的路由: Linux 系統下的路由表是由小網域排列到大網域 [root@bird yum.repos.d]# route ...
  • 1、介紹 Keeaplived主要有兩種應用場景,一個是通過配置keepalived結合ipvs做到負載均衡(LVS+Keepalived),有此需求者可參考以往博文:http://lizhenliang.blog.51cto.com/7876557/1343734。另一個是通過自身健康檢查、資源接 ...
  • linux系統基本原則:1、由自由的單一的小程式組成,組合小程式完成負責的任務。2、一切皆文件,3、儘量避免捕獲用戶介面,也就是說用戶輸入命令後就能直接返回結果。4、配置文件保存為純文本格式。 GUI介面:圖形介面 CLI介面:命令介面,需要用戶輸入命令。 命令提示符:prompt root 管理員 ...
  • 有時候文件夾下有好多圖片什麼的,文件名稱不是統一的格式,想統一一下,於是google找到以下方法,進入要操作的目錄,按住shift鍵的同時,單擊滑鼠右鍵,你會看到在此處打開命令行視窗的字樣點擊下就進入 了DOS操作視窗了 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...