1. 程式人生 > >linux學習第6天(自習) vim使用

linux學習第6天(自習) vim使用

下一個 平分 文件中 全局 刪除命令 不能 多個 鍵盤操作 軟件

linux學習第6天(自習) vim使用

時間: 20180721


目錄

vim

模式切換

退出文件

光標移動

行間移動

vim的編輯命令

vim可視化模式

撤消編輯

翻屏操作

vim中的末行模式

內容定界

查找

查找並替換

窗口屬性定義

多文件模式操作

多窗口模式




vim 編輯器

Vi IMprove, vi 的版本

此為一款linux系統裏非常流行的文件編輯器軟件


vim的三種工作模式


1. 編輯模式 也叫命令模式,鍵盤操作常被理解為編輯命令

2. 輸入模式 在文本文件當中輸入內容

3. 末行模式 vim內置的命令行接口,執行vim的內置命令


模式切換

1. ESC 輸入模式切換至編輯模式

2. 從編輯模式切換至輸入模式 i, a, o, I, A, O, C, R, r

3. 編輯模式切換至末行模式 :


註意: 輸入模式不可直接切換至末行模式


退出文件

:q, :q!, :wq, :x, :wq!, :w /path/file

編輯模式保存退出快捷鍵ZZ


光標移動

字符間移動 h j k l

單詞間移動 w e b

行內移動 ^ $ 0

句子間移動 ( )

段落間移動 { }

行間移動

G 1G gg


vim的編輯命令

x 刪除光標所在處的字符

d 刪除命令,結合光標中轉字符使用,刪除跳轉範圍內的字符

w, b, e, $, 0, ^

dd 刪除光標所在行

#dd 刪除多行

p paste 粘貼

p 緩沖區如果存的是整行,則粘貼於當前光標所在行的下邊,

否則粘貼至當前光標所在處的後面

P 緩沖區如果存的是整行,則粘貼於當前光標所在行的上方,

否則粘貼至當前光標所在處的前面

y yank 復制,結合光標跳轉字符使用,復制跳轉範圍內的字符

w, b, e, $, 0, ^

Y 復制行

c change 修改,結合光標跳轉字符使用,修改跳轉範圍內的字符

w, b, e, $, 0, ^

cc C 刪除光標所在處的整行而後轉為輸入模式


vim可視化模式

v 光標走過的字符

V 光標走過的行


note: 經常結合編輯命令使用 d, c, y


撤消編輯

u undo 撤銷此前的操作

#u 撤消最近#次的操作


撤消此前的撤消的操作 Ctrl+r


翻屏操作

Ctrl+f 向文件尾部翻一屏

Ctrl+b 向文件首部翻一屏

Ctrl+d 向文件尾部翻半屏

Ctrl+u 向文件首部翻半屏


vim中的末行模式

1. 內容定界 startpos,endpos

# 跳至第#行

#,# 從左側第#行到右側第#行結尾

#,+# 從左側第#行,加上右側#行表示的行數

. 當前行

$ 最後一行

% 全文,相當於1,$

/pat1/,/pat2/ 從第一次被pat1模式匹配到行開始,一直到第一次被pat2模式匹配

到的行結束


使用方式:

後跟一個編輯命令c, d, y 可以直接附加在地址範圍後使用

w /path/file 將選定的內容保存至指定的文件中

r /path/file 將指定的文件內容讀入到當前所打開的文件

2. 查找

/PATTERN 從當前光標所在處向文件尾部查找

?PATTERN 從當前光標所在處向文件首部查找

n 與命令同方向查找下一個匹配到的文本

N 與命令反方向查找下一個匹配到的文本

3. 查找並替換

s 在模式下完成查找並替換操作

s/查找模式/要替換成的內容/修飾符


查找模式 可以使用正則表達式

要替換成的內容 不能使用模式,僅能使用引用如\1,\2 等後向引用

還可以使用&引用前面查找時查找到的整個內容

修飾符

i 忽略大小寫

g 全局替換,默認情況下一行只替換第一次出現的內容

4. 窗口屬性定義

set nu 顯示行號

set nonu 取消行號

set ai autoindent 啟用自動縮進

set noai 取消自動縮進

set ic 忽略字符的大小寫

set noic 不忽略字符的大小寫

syntax on|off 語法高亮

set hlsearch|nohlsearch 搜索高亮


Note: 末行模式中的窗口屬性定義只對當前vim進程有效,永久有效可修改下面的

配置文件來進行定義 全局 /etc/vimrc 用戶~/.vimrc


5.多文件模式(一次打開多個文件)

:next 切換到下一個文件

:previous 切換到上一個

:last 切換到最後一個

:first 切換到第一個

:wqall 保存所有文件並退出


6. 多窗口模式

多文件 一次打開多個文件,並顯示在多個窗口裏 vim -o a.txt b.txt

-o 水平分割

-O 垂直分割

在窗口間切換Ctrl+w,Arrow(方向鍵)


單文件

Ctrl+w,s 水平分割 將當前的文件水平分割為兩個窗口(便於查看)

Ctrl+w,v 垂直分割 將當前的文件垂直分割為兩個窗口


linux學習第6天(自習) vim使用