文本編輯器專輯之—Vim

一、打開文件

1.Vim +N 文件:打開文件後光標處於第N行

[root@CentOS7 data]# cp /etc/passwd /data/passwd.bak
[root@CentOS7 data]# vim +10 /data/passwd.bak

跳轉到文章末尾:G

在這裏插入圖片描述

2.只讀形式打開,不能強制保存!

[root@CentOS7 data]# vim -m passwd.bak

在這裏插入圖片描述

3.比較兩個文件:

[root@CentOS7 data]# vim -d passwd.bak test.txt

2 files to edit
退出::qall
在這裏插入圖片描述

4.打開二進制文件

[root@CentOS7 data]# dd if=/dev/zero of=/data/binary bs=1 count=3
3+0 records in
3+0 records out
3 bytes (3 B) copied, 0.000531175 s, 5.6 kB/s
[root@CentOS7 data]# ll
total 12
-rw-r--r--. 1 root root    3 May 16 08:04 binary
-rw-r--r--. 1 root root 2304 May 11 14:18 passwd.bak
-rw-r--r--. 1 root root   37 May 16 07:45 test.txt
[root@CentOS7 data]# cat binary 
[root@CentOS7 data]# hexdump -C binary 
00000000  00 00 00                                          |...|
00000003
[root@CentOS7 data]#vim -b binary

在這裏插入圖片描述
在這裏插入圖片描述

  • 轉換可讀的16進制

轉換可讀的16進制

:%!xxd

在這裏插入圖片描述
在這裏插入圖片描述

  • 修改爲ABC的16進制,並轉回二進制保存退出:
    在這裏插入圖片描述
    在這裏插入圖片描述

二、命令模式

1.進入插入模式:
O:光標上方
o光標下方
A光標所在行尾
a光標右移1個字符
I光標所在行行首輸入
i光標處輸入
在這裏插入圖片描述

2.直接退出:用於進入不想編輯直接退出

快捷鍵:
ZZ保存退出
ZQ不保存退出

---------------------------------跳轉---------------------------------
3.光標移動快捷鍵: h左j下k上l右 (跳多行: 數字N + h左j下k上l右)
行首0 行尾$ 非空白行首^

4.單詞間跳轉快捷鍵:
w:下一個單詞
b:前一個單詞首
e:單詞尾

5.數字N +快捷鍵
(1).句間移動:
(2)段落間移動:{}
---------------------------------跳轉---------------------------------

------------------------------------------------------------------
6.複製:
複製整行yy
複製多行N yy
粘貼P下一行 p上一行
複製到第一個X字符yt X
------------------------------------------------------------------

------------------------------------------------------------------
7.刪除:
刪除整行dd
刪除多行N dd
刪除到第一個X字符dt X
------------------------------------------------------------------

---------------------------------修改--------------------------------
8.字符編輯
x 刪除字符 (刪除多個:數字N x)
xp 交換前後字符位置
~ 轉換大小寫
J 刪除行後換行符
r 替換字符
R 切換replace模式
在這裏插入圖片描述

---------------------------------修改--------------------------------

---------------------------------查看--------------------------------
/ 查找字符:向尾
查找字符:向首

取消高亮:擴展命令模式下:nohlsearch(簡寫:noh
----------------------------------查看-------------------------------

-----------------------------------撤銷------------------------------
撤銷最近更改: u**
撤銷多次修改:N u
撤銷光標所在行的所有操作:U
------------------------------------撤銷------------------------------------

----------------------------------重做-------------------------------
重做前一次撤銷的操作Ctrl r
----------------------------------重做-------------------------------

----------------------------------重複-------------------------------
重做前一個操作 .
重做前一個操作多次N .
---------------------------------重複--------------------------------

-------------------------------多剪切板------------------------------
共a-z 26個剪切板,10個數字寄存器(0-9):
“ay “ap
“by “bp
“cy “cp
“dy “dp
--------------------------------多剪切板-----------------------------

---------------------------------標記--------------------------------
26個字母均可做標記:m a-z
跳轉到某個標記:’ a-z
跳轉到未標記位置提示:
在這裏插入圖片描述

-------------------------------標記----------------------------------

--------------------------------記錄宏-------------------------------
錄製:q 宏名稱
停止錄製:q
執行:@ 宏名稱
重新執行上次執行宏:@@
-------------------------------記錄宏--------------------------------

2.當前頁面跳轉
H頁首 M頁中 L頁尾
整行移動(光標所在行
ztzzzb底部

三、拓展命令模式

1.w保存
2.wq 保存退出
3.x 保存退出
4.q 退出
5.q! 不存退出
6.r 文件名:讀文件到當前文件中

:r /etc/issue

在這裏插入圖片描述
在這裏插入圖片描述
7.另存爲 w 文件名

:w passold.bak

在這裏插入圖片描述
在這裏插入圖片描述
8.不退出vim情況執行命令:!命令

:! ls /boot/

在這裏插入圖片描述
在這裏插入圖片描述

9.把命令結果放入vim文件中,結果插入到光標所在行的下一行:r! 命令

:r! hostname

在這裏插入圖片描述
在這裏插入圖片描述
10.地址定界(跳轉)
: N 跳轉到第N行
:N + M 從N行到M行
.當前行
$最後一行
%全文=1,$

11.查找替換-區分大小寫

:s 分隔符 要查找內容 分隔符 替換爲的內容 分隔符

全局搜索:%s分隔符 要查找內容 分隔符 替換爲的內容 分隔符

替換光標所在行查找到的內容:s #roo#admin#
在這裏插入圖片描述
如果光標所在行未找到關鍵詞則報錯提示
在這裏插入圖片描述
目標:替換所有查找到的內容 實際:仍然是替換光標所在行,需要加全局搜索%s
:s#root#admin#g
在這裏插入圖片描述

:%s#root#admin#g  

在這裏插入圖片描述

12.多窗口
(1)多文件分割:

vim –o 文件1  文件2    水平分割
vim –O 文件1  文件2		垂直分割

窗口切換快捷鍵:Ctrl ww
兩個都保存退出:wqall

示例:vim -O test.txt binary
在這裏插入圖片描述

(2)單文件分割:

Ctrl w s   水平
Ctrl w v   垂直
Ctrl w q	取消相鄰窗口
Ctrl w o	取消全部窗口

保存退出:wqall

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章