vim編輯器

萱蘇的運維日常 2024-03-28 13:31:10
vim是一個全屏幕純文本編輯器,是vi編輯器的增強版,我們主要講解的是vim編輯器。

vim基本工作模式

命令模式:是主要使用快捷鍵的模式

命令含義a在光標所在字符後插入A在光標所在行尾插入i在光標所在字符前插入I在光標所在行行首插入o在光標下插入新行O在光標上插入新行

輸入模式:主要用于文本編輯,和記事本類似,輸入數據就好

末行模式(編輯模式):

:w 保存不退出

:w 新文件名 把文件另存爲新文件

:q 不保存退出

:wq 保存退出

:!強制

:q! 強制不保存退出,用于修改文件之後,不保存數據退出。

:wq!強制保存退出,當文件的所有者或者root用戶,對文件沒有寫權限的時候,強制寫入數據使用。

命令模式的操作移動光標

上下左右移動光標

上(H)、下(J)、左(K)、右(L)方向鍵 移動光標

把光標移動到文件頭或尾

gg 移動到文件頭

G 移動到文件尾(shift+g)

移動到行首或行尾

^ 移動到行首

$ 移動到行尾

移動到指定行

:n 移動到第n行

刪除或剪切

刪除字母

x 刪除單個字母

nx 刪除n個字母

刪除整行或剪切

dd 刪除單行

ndd 刪除多行

:n1,n2d 刪除指定範圍的行

刪除整行或多行,這是比較常用的刪除方法。這裏的dd快捷鍵既是刪除,也是剪切。刪除內容放入了剪切板,如果不粘貼就是刪除,如果粘貼就是剪切。粘貼方法如下:

pp 粘貼到光標後

P粘貼到光標前

從光標所在行刪除到文件尾

dG 從光標所在行刪除到文件尾

"d”是刪除行,"G”是文件尾,連起來就是從光標所在行刪除到文件尾。如果把光標放在文件首,那麽“dG”就變成了刪除整篇文檔了。

複制

yy 複制單行

nyy 複制多行

撤銷

u 撤銷

ctrl+r 反撤銷

“u”鍵能一直撤銷到文件打開時的狀態,類似Windows下"ctrl+z”鍵的作用。

"ctrl+r”能一直反撤銷到最後一次操作狀態,類似Windows下"ctrl+y”鍵的作用。

替換

r 替換光標所在處的字符

R 從光標所在處開始替換字符,按ESC結束

:1,10s/old/new/g 替換1到10 行的所有old爲new:%s/old/new/g 替換整個文件的old 爲new替換字符串:1,10s//#/g注釋1到10行:1,10s/#//g取消注釋

vim 配置文件

這次末行模式參數設置,多數需要在vim中才能生效。

命令含義:set nu:set nonu顯示與取消行號。:syntax on:syntax off是否依據語法顯示相關的顔色幫助。在 Vim 中修改相關的配置文件或Shell 腳本文件時(如前面示例的腳本/etc/init.d/sshd),默認會顯示相應的顔色,用來幫助排錯。如果覺得顔色産生了幹擾,則可以取消此設置:set hlsearch:set nohlsearch設置是否將查找的字符串高亮顯示。默認是 set hlsearch 高亮顯示:set ruler:set noruler設置是否顯示右下角的狀態欄。默認是 set ruler 顯示:set showmode:set noshowmode設置是否在左下角顯示如“—INSERT--”之類的狀態欄。默認是 set showmode 顯示:set list:set nolist設置是否顯示隱藏字符(Tab 鍵用“^I”表示,回車符用“$”表示)。默認是 nolist 顯示。如果使用 set list 顯示隱藏字符,類似“cat –A 文件名”。

vim支持更多的設置參數,可以通過":set all”進行查看。如果想要永久生效,需要手工建立vim的配置文件“~/.vimrc”,把你需要的參數寫入配置文件就永久生效了。

補充:Windows下回車符在Linux中是用“^M$”符號顯示,而不是“$”符。這樣會導致Windows下編輯的程序腳本,無法在Linux中執行。這時可以通過命令"dos2unix",把Windows格式轉爲Linux格式,當然反過來"unix2dos”命令就是把Linux格式轉爲Windows格式。這兩個命令默認沒有安裝,需要手工安裝才能使用。

查找/查找內容

/查找內容 從光標所在行向下

?查找內容 從光標所在行向上搜索

n 下一個

N 上一個

vim使用技巧在vim中導入其他文件內容或命令結果

導入其他文件內容

:r文件名 把文件內容導入光標位置

在vim中執行系統命令

:!命令  在vim中執行系統命令(只能查看命令執行結果)

:r!命令 在vim中執行系統命令,並把命令結果導入光標所在行

設定快捷鍵

:map快捷鍵快捷鍵執行的命令 自定義快捷鍵

vim允許自定義快捷鍵,常用的自定義快捷鍵如下:

:map ^P I#<ESC>按"ctrl+p”時,在行首加入注釋,

:map ^B ^x按“ctrl+b”時,刪除行首第一個字母(刪除注釋)

注意:“P快捷鍵不能手工輸入,需要執行ctrl+V+P來定義,或ctrl+V,然後ctrl+P。B快捷17鍵也是一樣。

字符替換

:ab 源字符 替換爲字符 字符替換

在vim編輯中,有時候需要頻繁輸入某一個長字符串(比如郵箱),這時使用字符串替換,能增加輸入效率,例如:

:ab mymail aaa當碰到"mymail”時,轉變爲郵箱注意:“源字符”不應設置的太短,否則有可能影響輸入。

多文件打開

在vim中可以同時打開兩個文件,只要執行如下命令:

#-o 小寫o會上下分屏打開兩個文件[root@aliyun ~]# vim -o abc bed#-O 大寫O會左右分屏打開兩個文件[root@aliyun ~]# vim -O abc bcd a1

這樣可以同時打開兩個文件,方便操作。如果是“-o”上下打開兩個文件,可以通過先按"ctrl+w”,再按“上下箭頭”的方式在兩個文件之間切換。如果是“-O”左右打開兩個文件,可以通過先按"ctrl+w”,再按“左右箭頭”的方式在兩個文件之間切換。

問題反饋

若對文中有任何的疑問,或者需要幫助可以通過以下方式進行反饋

直接進行評論或者單獨私聊

發送郵件到:mr_xuansu@163.com

0 阅读:9