Linux Vi的使用

一、插入文本

┌──┬────────────┐
│命令│描述 │
├──┼────────────┤
│i │在當前字符前插入文本 │
├──┼────────────┤
│I │在行首插入文本 │
├──┼────────────┤
│a │在當前字符后添加文本 │
├──┼────────────┤
│A │在行末添加文本 │
├──┼────────────┤
│o │在當前行后面插入一空行 │
├──┼────────────┤
│O │在當前行前面插入一空行 │
├──┼────────────┤
│R │以改寫方式輸入文本 │
└──┴────────────┘
二、移動光標
┌─────┬───────────┐
│命令 │描述 │
├─────┼───────────┤
│j或下箭頭 │向下移動一行 │
├─────┼───────────┤
│k或上箭頭 │向上移動一行 │
├─────┼───────────┤
│h或左箭頭 │左移一個字符 │
├─────┼───────────┤
│l或右箭頭 │右移一個字符 │
├─────┼───────────┤
│w │右移一個詞 │
├─────┼───────────┤
│W │右移一個以空格分隔的詞│
├─────┼───────────┤
│b │左移一個詞 │
├─────┼───────────┤
│B │左移一個以空格分隔的詞│
├─────┼───────────┤
│0 │移到行首 │
│Ctrl-F │向前翻頁 │
├─────┼───────────┤
│Ctrl-B │向后翻頁 │
├─────┼───────────┤
│nG │到第n行 │
├─────┼───────────┤
│G │到最后一行 │
└─────┴───────────┘
三、替換文本
┌─────┬──────┐
│命令 │描述 │
├─────┼──────┤
│$ │到行尾 │
├─────┼──────┤
│( │到句子的開頭│
├─────┼──────┤
│) │到句子的末尾│
├─────┼──────┤
│{ │到段落的開頭│
├─────┼──────┤
│} │到段落的末尾│
└─────┴──────┘

四、刪除文本
┌───┬───────────┐
│命令 │描述 │
├───┼───────────┤
│r │替換一個字符 │
├───┼───────────┤
│c │修改文本直到按下Esc健 │
├───┼───────────┤
│cw │修改下一個詞 │
├───┼───────────┤
│cnw │修改接下來的n個詞 │
└───┴───────────┘
五、文本編輯
┌──┬──────────────────────┐
│命寺│描述 │
├──┼──────────────────────┤
│yy │將一行文本移到缺省緩沖區中 │
├──┼──────────────────────┤
│yn │將下一個詞移到缺省緩沖區中 │
├──┼──────────────────────┤
│ynw │將后面的n個詞移到缺省緩沖區中 │
├──┼──────────────────────┤
│p │如果缺省緩沖區中包含一行文本,則在當前 │
│ │行后面插入一個空行井將缺省緩沖區中的聲 │
│ │容粘貼到這一行中;如果缺省緩沖區中包含 │
│ │多個詞,把這些詞粘貼到光標的右邊. │
├──┼──────────────────────┤
│P │如果缺省緩沖區中包含一行文本,則正當前 │
│ │行前面插入一個空行井將缺省緩沖區中的內 │
│ │容粘貼到這一行中;如果缺省緩沖區中包含 │
│ │多個詞,把這些詞粘貼到光標的左邊 │
└──┴──────────────────────┘
六、保存退出
┌───────────┬───────────────┐
│命令 │描述 │
├───────────┼───────────────┤
│zz │保存并退出 │
├───────────┼───────────────┤
│:w filename │寫入文件 │
├───────────┼───────────────┤
│:W │寫入文件 │
├───────────┼───────────────┤
│:x │保存(如果當前文件修改過)并退出│
├───────────┼───────────────┤
│:q! │不保存文件,直接退出 │
├───────────┼───────────────┤
│:q │退出vi │
└───────────┴───────────────┘

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/535734.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/535734.shtml
英文地址,請注明出處:http://en.pswp.cn/news/535734.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Hive-beeline服務

Hive客戶端工具后續使用了Beeline 替代HiveCLI ,并且后續版本也會廢棄掉HiveCLI 客戶端工具,Beeline是 Hive 0.11版本引入的新命令行客戶端工具,它是基于SQLLine CLI的JDBC客戶端。 Beeline支持嵌入模式(embedded mode)和遠程模式(remote mode)。在嵌入式模式下&am…

用戶賬號管理基本概念

什么是用戶賬號管理用戶賬號一般包括普通用戶賬號、管理賬號和系統賬號。為了鑒別用戶身份以及加強系統安全,系統為每個使用它的人分配了一個賬號,這就是普通用戶賬號。每個人擁有一個獨立的普通用戶賬號,每個賬號有不同的用戶名和密碼。用戶…

JDK源碼解析之 Java.lang.Compiler

Compiler類提供支持Java到本機代碼編譯器和相關服務。在設計上,它作為一個占位符在JIT編譯器實現。 一、源碼部分 public final class Compiler {private Compiler() {} // dont make instancesprivate static native void initialize();private st…

shell的基本概念

Shell就像一個殼層,這個殼層介于用戶和操作系統之間,負責將用戶的命令解釋為操作系統可以接收的低級語言,并將操作系統響應的信息以用戶可以了解的方式來顯示。 從用戶登陸到注銷期間,用戶輸入的每個命令都會經過解譯及…

JDK源碼解析之 java.lang.System

一個和系統環境進行交互的類. System不允許被實例化, 而且是一個final類 一、不能實例化 private System() { }二、成員變量 public final static InputStream in null; //這是“標準”輸入流。 public final static PrintStream out null; //這是“標準”輸出流。 public …

詳解MySQL中DROP,TRUNCATE 和DELETE的區別

注意:這里說的delete是指不帶where子句的delete語句 相同點: truncate和不帶where子句的delete, 以及drop都會刪除表內的數據 不同點: 1. truncate和 delete只刪除數據不刪除表的結構(定義) drop語句將刪除表的結構被依賴的約束(constrain),觸發器(trigger),索引(index…

JDK源碼解析之 Java.lang.Package

如果我們在Class對象上調用getPackage方法,就可以得到描述該類所在包的Package對象(Package類是在java.lang中定義的)。我們也可以用包名通過調用靜態方法getPackage或者調用靜態方法getPackages(該方法返回由系統中所有已知包構成的數組)來獲得Package對象。getNam…

Mysql中limit的用法詳解

在我們使用查詢語句的時候,經常要返回前幾條或者中間某幾行數據,這個時候怎么辦呢?不用擔心,mysql已經為我們提供了這樣一個功能。SELECT * FROM table LIMIT [offset,] rows | rows OFFSET offset LIMIT 子句可以被用于強制 SE…

Docker入門-簡介

獨具魅力的Docker作為一門新技術,它的出現有可能引起其所在領域大范圍的波動甚至是重新洗牌。根據業內專業人士的看法,不論如何,Docker的出現,已經成為云服務市場中一枚極具意義的戰略性棋子。從2013年開始在國內發力,…

Mysql中limit的優化

在一些情況中,當你使用LIMIT row_count而不使用HAVING時,MySQL將以不同方式處理查詢。 如果你用LIMIT只選擇一些行,當MySQL選擇做完整的表掃描時,它將在一些情況下使用索引。 如果你使用LIMIT row_count與ORD…

Docker入門-架構

Docker 包括三個基本概念: 鏡像(Image):Docker 鏡像(Image),就相當于是一個 root 文件系統。比如官方鏡像 ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系統的 root 文件系統。容器(Cont…

MYSQL出錯代碼列表大全(中文)

mysql出錯了,以前往往靠猜.現在有了這張表,一查就出來了. 1005:創建表失敗1006:創建數據庫失敗1007:數據庫已存在,創建數據庫失敗1008:數據庫不存在,刪除數據庫失敗1009:不能刪除數據庫文件導致…

Docker入門-安裝

Centos7下安裝Docker docker官方說至少Linux 內核3.8 以上,建議3.10以上(ubuntu下要linux內核3.8以上, RHEL/Centos 的內核修補過, centos6.5的版本就可以) 1、把yum包更新到最新:yum update 2、安裝需要的…

Docker原理之Namespaces

命名空間(namespaces)是 Linux 為我們提供的用于分離進程樹、網絡接口、掛載點以及進程間通信等資源的方法。 一、Namespaces 在日常使用 Linux 或者 macOS 時,我們并沒有運行多個完全分離的服務器的需要,但是如果我們在服務器上啟…

mysql 快速插入(insert)多條記錄

方法1: INSERT INTO table(col_1, col_2,col_3) VALUES(1,11,111); INSERT INTO table(col_1, col_2,col_3)   VALUES(2,22,222); INSERT INTO table(col_1, col_2,col_3)   VALUES(3,33,333); 有沒有更快捷的辦法呢?答案是有(見方法2) 方法2: INSERT INTO table(col…

Docker原理之CGroups

控制組(cgroups)是 Linux 內核的一個特性,主要用來對共享資源進行隔離、限制、審計 等。只有能控制分配到容器的資源,才能避免當多個容器同時運行時的對系統資源的競爭。控制組技術最早是由 Google 的程序員 2006 年起提出&#x…

Mysql中的轉義字符

字符串是多個字符組成的一個字符序列,由單引號( “”) 或雙引號 ( “"”) 字符包圍。(但在 ANSI 模式中運行時只能用單引號)。 例如: a string"another string"在一個字符串中,如果某個序列具有特殊的含義,每個序…

Docker原理之UnionFS

一、UnionFS Linux 的命名空間和控制組分別解決了不同資源隔離的問題,前者解決了進程、網絡以及文件系統的隔離,后者實現了 CPU、內存等資源的隔離,但是在 Docker 中還有另一個非常重要的問題需要解決 - 也就是鏡像。 鏡像到底是什么&#…

教你精確編寫高質量高性能的MySQL語法

在應用系統開發初期,由于開發數據庫數據比較少,對于查詢SQL語句,復雜視圖的編寫,剛開始不會體會出SQL語句各種寫法的性能優劣,但是如果將應用系統提交實際應用后,隨著數據庫中數據的增加,系統的…

Docker使用-Hello World

1、docker pull hello-world 拉去docker遠程倉庫中的Hello World的鏡像 [rootCarlota2 ~]# docker pull hello-world Using default tag: latest latest: Pulling from library/hello-world 0e03bdcc26d7: Pull complete Digest: sha256:7f0a9f93b4aa3022c3a4c147a449bf11e09…