vi編輯器

来源:http://www.cnblogs.com/winifred-tang94/archive/2016/09/01/5831726.html
-Advertisement-
Play Games

轉載請標明:http://www.cnblogs.com/winifred-tang94/ 要啟動vi編輯器,直接在命令提示符下輸入vi命令即可,如果要編輯一個文件則使用“vi 文件名”的方式。如下圖所示,視窗的最後一行是狀態欄,有文件名、文件的大小、文件的讀寫屬性: Vi編輯器有三種操作方式: A ...


轉載請標明:http://www.cnblogs.com/winifred-tang94/

要啟動vi編輯器,直接在命令提示符下輸入vi命令即可,如果要編輯一個文件則使用“vi 文件名”的方式。如下圖所示,視窗的最後一行是狀態欄,有文件名、文件的大小、文件的讀寫屬性:

Vi編輯器有三種操作方式:

A、 命令方式;vi編輯器剛剛啟動的時候是處於命令方式的。

B、 編輯方式;如果用戶要進入編輯方式,可以通過在命令方式下輸入命令從而進入編輯方式。如附加數據的a命令和插入數據的i命令。輸入esc鍵就可以從編輯方式返回命令方式。

C、 ex轉義方式(在vi編輯器中調用ex編輯器的命令來完成編輯操作);在命令方式下輸入:命令就可以進入ex轉義方式。進入ex轉義方式後,可以在之前輸入的:(即ex命令提示符)後輸入ex命令進入ex方式編輯。

 

註意:在vi編輯器中隊文件進行的編輯,都是對編輯緩衝區進行操作的,如果要真正對文件進行修改,要輸入:w(ex命令)命令或其他命令向磁碟寫入,對文件的修改才會真正寫入文件。

 

Vi編輯器中的功能鍵:
<Esc>鍵:用於結束編輯方式,重新進入命令方式。

<Enter>鍵:在使用ex轉義方式的時候,enter鍵使ex命令生效並且退出ex轉義方式返回命令方式。

/:在 / 後輸入字元串或字元可以從當前位置向後查找字元串或字元,當找到第一個需要找的字元串或字元後,點擊 n 會跳到下一個匹配值。

?:? 的功能和 / 是一樣的。

如下圖所示:在/後輸入esac後按enter鍵就會找到匹配的字元串。

 

退出vi編輯器:
命令ZZ:在命令方式下,輸入命令ZZ保存當前修改並退出vi編輯器。

Ex命令:x ——可以保存當前修改並推出vi;

Ex命令:q——退出

Ex命令:q!——退出但不保存。

 

Vi編輯器在命令方式下的命令:

A、 游標移動命令:

移動至下一行:enter鍵和下方向鍵

移動到行首:0

移動到行尾:$

移動到某行:先按行號然後按G,游標就跳轉到指定行號的第一個字元。

移動到句首:(

移動到句尾: )

移動到段首:{

移動到段尾:  }

B、 文本編輯命令

在當前位置插入,用i命令,輸入的字元會插入所在游標的字元之前。

在當前位置附加,用a命令,輸入的字元會插入在當前游標所在的字元之後。

在當前行的末尾附加:A命令

開始新行:o 在當前行的下麵建立新行、O 在當前行的上面建立新行

C、 文本刪除命令

X命令刪除當前游標所在位置的字元,X命令刪除當前游標所在位置之前的那個字元。

dw刪除當前位置的一個單詞;d$從當前位置刪除至行尾;dd刪除當前行。

 

註意:刪除操作刪除的文本放在一組緩衝棧中,緩衝棧編號從1到9,最後一次刪除的文本放在緩衝棧1中,可以通過p命令將最後一次刪除的文本放在當前行的下一行;如果要找回其他文本的話使用命令:+緩衝棧編號+p。

D、 文本修改命令

在編輯過程中,可能會有修改錯誤的時候,這個時候可以撤銷修改,u命令撤銷上一次修改,U命令撤銷進入本行以來所做的所有修改。

E、  文本移動和複製

在vi編輯器中也可以複製和移動。

如果要複製的話,要結合y命令和p命令。如果要複製當前一行則使用命令yy,然後將游標移動到要添加的位置,使用p命令,就將之前複製的那一行粘貼過來了。可以在yy前加數字表示行數,比如3yy表示從當前位置開始的3行都被覆制。

 

如果要移動的話,要結合d命令和p命令,之前我們說過dd命令刪除當前這一行,利用dd刪除了當前這一行後,將游標移動要所要移動到的位置執行p命令,就把之前刪除的那一行移動過來了。——之所以會這樣的原因是,刪除的數據保存在vi的緩衝區中。

 

Vi編輯器中的個別轉義命令

寫命令——:w

讀命令——:r 文件名(通過這個命令可以在打開的本文件中讀取外部文件)

 


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

-Advertisement-
Play Games
更多相關文章
  • (一)深入淺出理解索引結構 實際上,您可以把索引理解為一種特殊的目錄。微軟的SQL SERVER提供了兩種索引:聚集索引(clustered index,也稱聚類索引、簇集索引)和非聚集索引(nonclustered index,也稱非聚類索引、非簇集索引)。下麵,我們舉例來說明一下聚集索引和非聚集 ...
  • 要獲取什麼樣的數據? 我們要獲取的數據,是指那些公開的,可以輕易地獲取地數據.如果你有完整的數據集,肯定是極好的,但一般都很難通過還算正當的方式輕易獲取.單就本系列文章要研究的實時招聘信息來講,能獲取最近一個月的相關信息,已是足矣. 如何獲取數據? 爬蟲,也是可以的,作為一個備選方案.但是,我註意到 ...
  • 當天: select * from T_news where datediff(day,addtime,getdate())=0 最近三天: select * from T_news where datediff(day,addtime,getdate())<= 2 and datediff(day ...
  • 參見 HDP2.4安裝(五):集群及組件安裝 ,安裝配置的spark版本為1.6, 在已安裝HBase、hadoop集群的基礎上通過 ambari 自動安裝Spark集群,基於hadoop yarn 的運行模式。 目錄: Spark集群安裝 參數配置 測試驗證 Spark集群安裝: 在ambari ...
  • Spark 作為一個以擅長記憶體計算為優勢的計算引擎,記憶體管理方案是其非常重要的模塊; Spark的記憶體可以大體歸為兩類:execution和storage,前者包括shuffles、joins、sorts和aggregations所需記憶體,後者包括cache和節點間數據傳輸所需記憶體;在Spark 1 ...
  • 瞭解Hive的都知道Hive有三種使用方式——CLI命令行,HWI(hie web interface)瀏覽器 以及 Thrift客戶端連接方式。 為了體驗下HWI模式,特意查詢了多方的資料,都沒有一個完整的部署方案,經過一下午的踩坑,這裡特意總結一下,希望為後人節省點時間。 先放個圖興奮一下! 參 ...
  • 大概思路如下: 使用Linux自帶的rsyslog服務來做底層,然後再使用mysql與rsyslog的模板來存儲文件,並且以web來進行顯示出來。<模板的存儲以日期的樹形結構來存儲,並且以伺服器客戶端IP為文件名進行劃分。 最終的效果如下圖: 大概步驟如下: 1.配置好rsyslog server的 ...
  • 轉自:http://www.cnblogs.com/zhbzz2007/p/4283194.html 在windows平臺下,使用系統的記事本以UTF-8編碼格式存儲了一個文本文件,但是由於Microsoft開發記事本的團隊使用了一個非常怪異的行為來保存UTF-8編碼的文件,它們自作聰明地在每個文件 ...
一周排行
    -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.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...