【CentOS 7筆記25】,Vim的使用#

shallow丿ovelinux


vim的介紹

  • vim是類Unix的文本編輯工具,是在vi的基礎上改進,增長了語法高亮等其餘特性。
  • 查看vim版本
[root@localhost]# vim --version | head -1
  • 查看包名
[root@localhost]# rpm -qa | grep vim
  • 語法高亮
[root@localhost ~]# yum install -y vim-enhanced

使用這條命令使某些系統文件以語法高亮顯示vim

通常模式

1.移動光標

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

H	#光標移動到本屏幕的最頂端
M	#光標移動到本屏幕的最中央
L	#光標移動到本屏幕的最低端

$	#光標移動到本行行首
0/^	#光標移動到本行行尾

gg	#光標移動到本文的最首行
G	#光標移動到本文的最末行

Ctrl+f	#上一頁
Ctrl+b	#下一頁

2. 撤銷與重複

u    #撤銷
Ctrl+r	#不撤銷
.    #重複

3. 選擇

v    自由選擇

4. 複製

yy	#複製光標當前行
	nyy	#複製光標當前行到第n行
	ygg	#複製光標當前行到文本行首
	yG	#複製光標當前行到文本末尾

4. 刪除或剪切

x    #刪除光標所在的當前字符
X    #刪除光標前一個字符

nx    #刪除當前字符到右側n個字符
dw    #刪除光標右側的全部字符,如果單詞也包括右側的空格
ndw    #刪除光標右側的n個字符,如果單詞也包括右側的空格
db    #刪除光標左側的全部字符,如果單詞也包括左側的空格
ndb    #刪除光標左側的n個字符,如果單詞也包括左側的空格
dd    #刪除光標所在行
ndd    #刪除(剪切)n行內容
d$    #刪除光標到右側的全部字符,同D
d0    #刪除光標左側的全部字符
J    #刪除本行回車字符與下一行的行前空格符,並與下一行合併,合併後與行間隔着空間

5. 粘貼

p	#從光標所在行開始,向下粘貼已經複製或者粘貼的內容
P	#從光標所在行開始,向上粘貼已經複製或粘貼的內容

INSERT插入模式(編輯模式)

1. 光標插入

i    #光標在左插入
a    #光標在右插入
I    #行開頭前插入
A    #行結尾後插入

o    #行的上一行插入
O    #行的下一行插入

s    #刪除當前光標所在的字符,而且插入
ns    #刪除光標所在行到右側的第n個字符,而且插入
S    #刪除當前光標所在行,而且插入
nS    #刪除當前光標所在行到後面第n行,而且插入

2. 替換

rc    #用c替換當前光標所在的當前字符
nrc    #用c替換當前光標到右側n個字符
s    #刪除當前光標所在的字符,而且插入
ns    #刪除光標所在行到右側的第n個字符,而且插入
S    #刪除當前光標所在行,而且插入
nS    #刪除當前光標所在行到後面第n行,而且插入
cw    #替換(刪除)右側()內字符或單詞,而且插入
cW    #替換(刪除)右側全部字符,而且插入,通c$

在退出插入模式時,則鍵盤按ESC可退回通常模式工具

命令模式

1. 查找

:/word	#向光標以後尋找一個字符串名爲word的字符串,按n繼續搜下一個,按N搜回上一個
:?word	#向光標以前尋找一個字符串名爲word的字符串,按n繼續搜上一個,按N搜回下一個
:n1,n2s/word1/word2/	#在n1和n2行間查找word1這個字符串並替換爲word2,但只替換每行的第一個字符串
:n1,n2s/word1/word2/g	#在n1和n2行間查找word1這個字符串並替換爲word2,用法同n1,n2s#word1#word2#g
:1,$s/word1/word2/g	#第一行到最末行,查找word1並替換成word2
:1,$s/word1/word2/gc	#加上c的做用是,在替換前須要用戶確認

2. 打開、保存、退出

:e path_to_file    #從絕對路徑打開文件
:w    #保存
:w!    #強制保存
:w file_temp    #文件另保存爲
:q    #退出
:q!    #強制退出
:wq!    #強制保存並退出

3. 其餘

:set nu    #顯示行號
:set number	#顯示行號
:set nonu    #不顯示行號

:nohl    #取消顏色高亮

:n1,n2d	#將n1行到n2行的全部內容刪除

:w path_to_file	#將當前編輯的文件另保存爲
:r path_to_file	#將指定的文件導入當前編輯的文件

:!cat path_to_file	#不退出當前編輯的文件,並運行linux命令
:r! cat path_to_file	#將命令的執行結果導入當前編輯的文檔

:new path_to_file	#窗口水平分隔,使用ctrl+w切換
:vsplit path_to_file	#窗口垂直分隔,使用ctrl+w切換
:only	#只保留當前窗口,關閉其餘窗口

:set ic	#搜索或替換關鍵時,不分大小寫
:set noic	#取消不分大小

:set backup	#備份
:set wrapfile	#備份
:set nobackup	#不備份
:set nowrap	#不備份

:set wrap	#換行
:set nowrap	#不換行

:set ruler	#顯示光標當前位置
:set showmode	#顯示左下角當前vim模式
:set enconding=utf-8	#文件編碼
:set readnoly	#設置文件爲只讀,須要強制保存
:e!	#將文件恢復到打開時的狀態

其餘

  1. 配置永久生效,防止主機重啓後,臨時設置消失,在/etc/vimrc末尾加入須要設置的命令,對全體用戶統一編碼

  2. 對指定用戶設置,在用戶的家目錄中修改或建立.vimrc文件code

操做

[root@localhost ~]# touch /home/1.txt
[root@localhost ~]# echo "/etc/passwd" >> /home/1.txt
[root@localhost ~]# vi /home/1.txt
	/etc/passwd
通常模式
	y
	4p
命令模式
	:1,$s/\/etc\/passwd/\/etc\/shadow/g
	:1,$s#/etc/shadow#/etc/passwd#g
	:set nu
	:set nonu
	:wq
[root@localhost ~]# vi
命令模式
	:e /home/1.txt
	:.,$d
	:q!
[root@localhost ~]# vi +3 /home/1.txt    #使用此命令能夠在打開文本時,將光標定在特定行上
通常模式
	r #
命令模式
	:1,$s#\#etc/passwd#/etc/shadow#g
	:w
通常模式
	r @
   	u
命令模式
	:q
相關文章
相關標籤/搜索