Vim学习及实践
1、簡介
Vim(Vi[Improved])編輯器是功能強大的跨平臺文本文件編輯工具,繼承自Unix系統的Vi編輯器,支持Linux/Mac OS X/Windows系統,利用它可以建立、修改文本文件。進入Vim編輯程序,可以在終端輸入下面的命令:
$vim [filename]其中filename是要編輯器的文件的路徑名。如果文件不存在,它將為你建立一個新文件。Vim編輯程序有三種操作模式,分別稱為 編輯模式、插入模式 和 命令模式,當運行Vim時,首先進入編輯模式。
2、編輯模式(ctr+v)
Vim編輯方式的主要用途是在被編輯的文件中移動光標的位置。一旦光標移到到所要的位置,就可以進行剪切和粘貼正文塊,刪除正文和插入新的正文。當完成所有的編輯工作后,需要保存編輯器結果,退出編輯程序回到終端,可以發出ZZ命令,連續按兩次大寫的Z鍵。
2.1 跳轉
如果鍵盤上有上、下、左、右箭頭的導航鍵,就由這些鍵來完成光標的移動。
k 上移; j 下移; h 左移; l 右移。更大范圍的移動:
gg 將光標定位到文件第一行起始位置; G 將光標定位到文件最后一行起始位置; H 將光標移到屏幕上的起始行(或最上行); M 將光標移到屏幕中間; L 將光標移到屏幕最后一行。2.2 搜索匹配
要查找文件中指定字或短語出現的位置,可以用Vim直接進行搜索,而不必以手工方式進行。搜索方法是:鍵入字符 / ,后面跟以要搜索的字符串,然后按回車鍵。編輯程序執行正向搜索(即朝文件末尾方向),并在找到指定字符串后,將光標停到該字符串的開頭;鍵入 n 命令可以繼續執行搜索,找出這一字符串下次出現的位置。
/str1 正向搜索字符串 str1; n 繼續搜索,找出 str1 字符串下次出現的位置; N 繼續搜索,找出 str1 字符串上一次出現的位置;如:/a
2.3 替換和刪除
Vim常規的刪除命令是 d、 x (前者刪除 行 ,后者刪除 字符 ),將光標定位于文件內指定位置后,可以用其他字符來替換光標所指向的字符,或從當前光標位置刪除一個或多個字符或一行、多行。例如:
dd 刪除光標所在行,并去除空隙; x 刪除光標所指向的當前字符;Vim常規的替換命令有 c 和 s ,結合Vim的其他特性可以實現基礎的替換功能,不過替換命令執行以后,通常會由 編輯模式 進入 插入模式 :
:%s/this/that 替換每一行的第一個 %-整體文章 :%s/this/that/g 全部替換 :7,10 s/this/that/g 替換7-10行- g 放在命令末尾,表示對搜索字符串的每次出現進行替換,不止匹配每行中的第一次出現;不加 g,表示只對搜索字符串的首次出現進行替換;g 放在命令開頭,表示對正文中所有包含搜索字符串的行進行替換操作;
- s 表示后面跟著一串替換的命令;
- % 表示替換范圍是所有行,即全文。
2.4 復制粘貼
從正文中刪除的內容(如字符、字或行)并沒有真正丟失,而是被剪切并復制到了一個內存緩沖區中。用戶可將其粘貼到正文中的指定位置。完成粘貼操作的命令是:
p 小寫字母 p,將緩沖區的內容粘貼到光標的后面; P 大寫字母 P,將緩沖區的內容粘貼到光標的前面。復制命令:
yy 復制當前行到內存緩沖區;2.5 撤銷
在編輯文檔的過程中,為消除某個錯誤的編輯命令造成的后果,可以用撤消命令。
u 撤消前一條命令的結果;2.6 vim自動有行號
如果想讓vim永久顯示行號,則需要修改vim配置文件vimrc。如果沒有此文件可以創建一個。在啟動vim時,當前用戶根目錄下的vimrc文件會被自動讀取,因此一般在當前用戶的根目錄下創建vimrc文件,即使用下面的命令:
[root@VM_0_13_centos ~]# vim ~/.vimrc將下面輸入,按下Esc+:wq保存
set nu set history=10 ~3. 插入模式
3.1 進入插入模式
在編輯模式下正確定位光標之后,可用以下命令切換到插入模式:
i 在光標左側插入正文 a 在光標右側插入正文3.2 退出插入模式
退出插入模式的方法是,按 ESC 鍵或組合鍵 Ctrl+[ ,退出插入模式之后,將會進入編輯模式 。
4. 命令模式
在Vim的命令模式下,可以使用復雜的命令。在編輯模式下鍵入 : ,光標就跳到屏幕最后一行,并在那里顯示冒號,此時已進入命令模式。命令模式又稱 末行模式,用戶輸入的內容均顯示在屏幕的最后一行,按回車鍵,Vim 執行命令。
4.1 打開、保存、退出
保存當前編輯的文件需要用 :w 命令(單詞 write 的縮寫):
:w將當前文件另存為 file 則:
:w file在編輯模式下可以用 ZZ 命令退出Vim編輯程序,該命令保存對正文所作的修改,覆蓋原始文件。如果只需要退出編輯程序,而不打算保存編輯的內容,可用下面的命令:
: q 在未作修改的情況下退出; : q! 放棄所有修改,退出編輯程序。保存并退出則可以講兩條命令結合起來使用(注意命令順序,先保存,后退出):
:wq4.2 行號與文件
編輯中的每一行正文都有自己的行號,用下列命令可以移動光標到指定行:
: n 將光標移到第 n 行在命令模式下,允許從文件中讀取正文,或將正文寫入文件。例如:
:w 將編輯的內容寫入原始文件,用來保存編輯的中間結果 :wq 將編輯的內容寫入原始文件并退出編輯程序(相當于ZZ) :w file 將編輯的內容寫入 file 文件,保持原有文件的內容不變總結
- 上一篇: 将txt文件内容通过cgi和apache
- 下一篇: 李宏毅机器学习作业1:预测PM2.5(含