vim的使用

本文主要講述vim的使用

一.vim是什么?

vim是一個十分著名也十分強大的編輯器,是vi的增強版,是一個模式化的編輯器,英文名稱為 Visual Interface iMprove,在2000年2月Vim贏得了Slashdot Beanie的最佳開放源代碼文本編輯器的美稱。

二.vim的工作模式

 (1)編輯模式:也叫命令模式,通過編輯命令實現對文件的編輯

 (2)輸入模式:在文件中輸入文件內容

 (3)末行模式:vim的內置命令行接口,執行vim的內置命令

三.vim的使用

1.打開文件

 (1)打開文件:

 vim  [option]  [file]

(2)打開文件后直接定位在指定行

 vim +line_number file 

(3)打開文件后直接定位在某個模式匹配到的行

vim +/pattern file

2.模式轉換

打開文件默認是編輯模式,通過一下方式進行模式轉換:

(1)ESC鍵:輸入模式轉換為編輯模式

(2)先按ESC,然后數如":" : 輸入模式轉換為命令模式

(3)輸入“:” : 編輯模式轉換為末行模式

(4)ESC:末行模式轉換為編輯模式

(5)從編輯模式轉換為輸入模式的方法

i:在光標多在的前方轉換為輸入模式
a:在光標所在的后方轉換為輸人模式
o:在光標所在行的下方新建一個空白行
O:在光標所在行的上方新建一個空白行
I:在光標所在行的行首轉換為輸入模式
A:在光標多在行的行尾轉換為輸入模式

3.完成文件的編輯,退出文件

要想退出文件,必須轉換到末行模式,在窗口的左下方顯示冒號,輸入相應的命令

q:退出但是不保存對文件的編輯
q!:強制退出,并且不保存對文件的編輯
wq:退出保存對文件的編輯
x:保存對文件的修改并退出
wq!:強制保存并退出
w /path/to/file 保存到指定文件中

也可以在編輯模式中通過快捷鍵ZZ保存退出。

4.光標移動

這里所說的光標移動是指在編輯模式之下:

(1)字符間跳轉

h:向左移動一個字符
l:向右移動一個字符
j:向下移動一個字符
k:向上移動一個字符

注意:

跳轉還支持多個字符之間跳轉,可以使用:數字+對應命令來跳轉指定的字符個數,例如:

4h:表示向左移動4個字符,同理,對于其他命令也適用。


(2)單詞間跳轉,同樣支持數字加命令的多單詞間跳轉的使用方式

w:移動到下一個單詞的詞首,注意,這里說的單詞是以空格為分隔標準,word123也是一個單詞
e:跳到當前單詞的詞尾或下一個單詞的詞尾
b:當前單詞的詞首或下一個單詞的詞首


(3)行內移動

^:跳到本行行首的第一個非空字符
0:跳到本行的絕對行首行首,即使行首有空格,也會跳到本行的最左側
$:跳到本行的行尾

(4)行間移動

#G:跳轉到第#號行
gg或1G:跳轉至行首
GG:跳轉至行尾

5.編輯命令

(1)刪除操作:注意是指在編輯模式下的操作

x:刪除光標所在之處的字符
#x:刪除光標開始之后的#個字符
d:刪除光當前標所在行
#dd:刪除光標開始的連續#行

(2)復制命令

y:復制命令
Y或yy:復制行
#y:復制當前行至之后的多少行

(3)粘貼命令

p:緩沖區如果存在整行,則粘貼至光標所在的下方
P:緩沖區如果存在整行,則粘貼至緩沖區所在的上方

(4)修改命令

修改的意思就是:先刪除,在轉換為輸入模式

C或cc:刪除光標所在行,然后轉換為輸入模式

#cc:刪除光標所在行開始之后的連續的#行

注意:以上四種命令均可組合位置錨定字符進行使用,完成對指定范圍內的內容進行相應的操作,位置錨定包括:

w:光標所在之后的一個單詞
e:光標所在之前的一個單詞
b:光標所在的上一行
$:錨定光標所在的行尾
^:錨定光標所在的行首
0:錨定光標所在的絕對行首

6.vim的可視化模式

v:選中光標所經過的字符
V:選中光標所經過的行

注意:當選中后,可以通過編輯命令進行操作:d(刪除),y(復制),c(修改)

7.撤銷操作

u:撤銷最近以一次的操作
#u:撤銷最近的#次操作
ctrl+r:撤銷此前的撤銷操作

8.翻屏操作

ctrl+d:向文件的尾部翻半屏
ctrl+u:向文件的首部翻半屏
ctrl+f:先文件的尾部翻一整屏
ctrl+b:向文件的首部翻一整屏

9.vim的末行模式

(1)內容定界

必須先進入末行模式,基本方式:start,end,其他的方式有:

#:錨定第#行
#1,#2:錨定從第#1行到#2行
#1,+#2:錨定#行到之后的#2行
.:錨定當前行
$:錨定組后一行
%:全文
#,$-1:#行到倒數第二行
/p1/,/p2/:從第一次被模式p1匹配到的行到第一次被模式p2匹配到的行
#,/p1/:從第#行到第一次被模式p1匹配到的行
/p1/,$:第一次被模式匹配到的行到最后一行

(2)查找

/pattern:從當前光標往后查找
?pattern:從當前光標往前查找,查找時可以使用n查看后一個,N查看前一個

(3)查找并替換

s/所要替換的內容/要替換成的內容/修飾符
所要替換的內容:通過正則表達式來指定
要替換成的內容:不能通過模式來指定,要指定具體要替換的內容
修飾符:i:忽略大小寫;g:進行全局替換

10.多窗口模式

(1)多窗口打開文件

vim -o file1 file2 :水平分割顯示
vim -O file1 file2:垂直分割顯示

(2)窗口間進行切換

按下ctrl之后連敲兩下w
命令模式下:next
命令模式下:previous
命令模式下:last
命令模式下:first
wqall:退出并保存所有的修改
qall:退出不保存修改

11.vim的屬性設置

對于vim的屬性設置,可以在命令模式下設置,不過僅對當前vim進程有效,要向永久有效,則應該將其配置信息寫入其配置文件中,全局的配置文件為/etc/vimrc,對所有用戶都生效,用戶個人的配置為~/.vimrc,僅對當前用戶有效。

常用配置為:

set ai:開啟自動縮進功能
set noai:關閉自動縮進功能
set nu:顯示行號
set nonu:關閉顯示行號
set ic:忽略字母大小寫
set noic:不忽略字母大小寫
syntax on:開啟語法高亮顯示功能
syntax off:關閉語法高亮顯示功能
set hlsearch:開啟搜索匹配時高亮顯示
set nohlsearch:關閉搜索匹配時高亮顯示功能

原創文章,作者:zhangbao,如若轉載,請注明出處:http://www.www58058.com/55316

(0)
zhangbaozhangbao
上一篇 2016-10-29
下一篇 2016-10-29

相關推薦

  • 馬哥網絡21-第5周作業

    1、顯示/boot/grub/grub.conf中以至少一個空白字符開頭的行; [root@localhost proc]# grep "^[[:space:]]\{1,\}" /boot/grub/grub.conf root (hd0,0) kernel /vmlinuz-2…

    Linux干貨 2016-08-08
  • 關于VIM編輯器

                                                      &nbsp…

    系統運維 2016-08-11
  • 啟動和內核管理2

    五、自制linux系統     分區并創建文件系統         fdisk /dev/sdb         分兩個必要的分區   &n…

    Linux干貨 2016-09-18
  • MySQL常用命令

    本文大綱 MySQL命令             (0%) 交互式CLI工具     服務端命令 mysqld服務器程序 數據類型 DDL語句                 &n…

    Linux干貨 2017-02-16
  • OPENSSL&DNS

      1、詳細描述一次加密通訊的過程,結合圖示最佳。 Client 從互聯網下載CA的公鑰,用于驗證Server身份 Server 通過加密算法生成一對密鑰,將公鑰發給CA認證機構,做數字證書 CA 通過自己的私鑰加密 Server 公鑰并加上自己的數字簽名后,將生成的數字證書發給Server Client 與 Server 通TCP的三次握手建立連…

    Linux干貨 2016-12-05
  • Linux 壓縮、解壓縮和打包工具

        前言:你是否曾經因為某個文件占用空間較大,而空間緊缺的U盤無法存放此文件。你是否曾經因為軟件里有太多文件而不方便復制和攜帶。你是否曾因需要備份太過零散而頭疼。那么基于“文件壓縮和打包”的技術因此出現。下面介紹下Linux下關于壓縮、解壓縮和打包的工具及使用。 一、相關術語的原理和意義   &…

    Linux干貨 2015-07-15

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-11-01 22:49

    博客寫得非常的好,32個贊,vim的總結非常詳細,加油!

欧美性久久久久