0326 第七次課:vim

VIM工具

1、vim介紹

  • vim與vi的區別html

    vim是vi的升級版,vim與vi最大的區別是vim帶有顏色顯示。vim

    使用vim須要安裝:yum -y install yumc#

  • vim三種模式windows

    通常模式、編輯模式、命令模式bash

模式 說明
通常模式 如dd行刪除、複製粘貼就是通常模式
編輯模式 按‘i’‘a’等,進行操做就是編輯模式
命令模式 如'/' 查找替換,:wq這些都是命令模式

2、vim通常模式操做

  • vim顏色顯示工具

    vim顏色會根據文件的目錄、文件類型等來斷定進行顯示顏色。如/etc/passwd移到/tmp目錄下不會顯示顏色,再改爲.sh類型就又會顯示顏色。加密

  • vim配置文件3d

    /etc/vimrc是vim的配置文件,控制vim的用法。這個做爲了解便可。htm

  • vim通常模式下的光標移動經常使用按鍵blog

    光標移動鍵:

操做 按鍵
向右 l
向左 h
向下 j
向上 k
同上操做方向鍵也能夠實現 ↑←↓→

加數字能夠指定移動的行數,如:5+l就能夠往右移動5位

其它操做:

按鍵 說明
Ctrl+f 向前翻頁
Ctrl+b 向後翻頁
數字'0'或者Shift+6 移動到行首
Shift+4 移動到行末
gg 快速移動到首行
G 快速移動到末行
nG n爲數字,快速移動到n行。
  • 通常模式下複製粘貼:
按鍵 說明
dd(按兩下) 刪除/剪貼光標所在的行
ndd 刪除/剪貼光標所在行以後的n行。n爲數字
x/X x刪除光標後一個字符,X刪除光標前一個字符
nx 向後刪除n個字符。n爲數字
yy 複製光標所在行
p 從光標所在行,向下粘貼
P 從光標所在行,向上粘貼
u 還原上一步,能夠多此還原,最後50次。
Ctrl+r 反還原上一步,和windows的Ctrl+z相似
v 按下v後能夠進行自由選擇,可實現自由複製、刪除等操做。

3、編輯模式操做

編輯模式就是進入可編輯文檔的模式。

  • 進入編輯模式的幾種方式
按鍵 說明
i 在光標的前一位進行編輯
I(大寫i) 在光標行行首進行編輯
a 光標的後一位進行編寫
A 光標行行尾進行編輯
o 光標行下一行進行編輯
O 光標行上一行進行編輯

4、命令模式

  • 搜索

    向下搜索:/word 搜索到的內容會高亮顯示

    向下查找:n

    向上查找:shift + n

    向下搜索:?word 搜索到的內容會高亮顯示

    向下查找:shift +n

    向上查找:n

  • 替換

    用法:開始行,結束行s/關鍵詞/替換詞/g

    示例:替換1-10包含root的內容,替換爲xxx

    :1,10s/root/xxx/g

    若是沒g則只會替換每一行的第一次出現的關鍵字,後面的並不會替換。

    結果:

    示例2:不指定行進行全文替換

    :1,$s/test/xxx/g

    全文替換把結束行換成$便可。

    示例3:含有特殊符號的替換

    好比想要替換的內容中含有"/"。

    一種方法是使用脫意符號,還有一種更加簡單的方法:

    把替/換成別的符號便可:1,$s#/etc#ooo#g

  • vim命令模式經常使用的命令

按鍵 說明
:w 保存
:wq 保存退出
:w! 強制保存
:q 退出
:q! 強制退出,全部的改動不會生效
:set nu 顯示行號
:set nonu 不顯示行號
:nohl 取消高亮顯示
:x 保存並退出,若是文本沒有任何改動,不會更改mtime

5、VIM實踐

  • 按照如下要求進行操做

    cp /etc/dnsmasq.conf /tmp/1.txt

    (1) 分別向下、向右、向左、向上移動6個字符(6j 6l 6h 6k)。

    (2) 分別向下、向上翻兩頁(分別按兩次ctrl+f和ctrl+b)。

    (3) 把光標移動到第49行(49G)。

    (4) 把光標移動到行尾,再移動到行首(Shift+4, Shift+6)。

    (5) 移動到1.txt文件的最後一行(G)。

    (6) 移動到文件的首行(gg)。

    (7) 搜索文件中出現的「dnsmasq」,並數一下該字符串出現的次數(/dnsmsq 而後按n)。

    (8) 把從第1行到第10行出現的dnsmasq替換成dns(:1,10s/dnsmasq/dns/g)。

    (9) 還原上一步操做(u)。

    (10) 把整個文件中全部的etc替換成cte(:1,$s/etc/cte/g)。

    (11) 把光標移動到第25行,刪除字符串 「ly」(25G 而後按l向右移動光標找到"ly",按v選中,而後按x)。

    (12) 還原上一步操做(u)。

    (13) 刪除第50行(50G dd)。

    (14) 還原上一步操做(u)。

    (15) 刪除第37-42行的全部內容(37G 6dd)。

    (16) 還原上一步操做(u)。

    (17) 複製第48行的內容並粘貼到第52行下面(48G yy 52G p)。

    (18) 還原上一步操做(u)。

    (19) 複製第37-42行的內容並粘貼到第44行上面(37G 6yy 44G P)

    (20) 還原上一步操做(按u)。

    (21) 把第37-42行的內容移動到第19行下面(37G 6dd 19G p)。

    (22) 還原上一步操做(按u)。

    (23) 把光標移動到首行,把第1行內容改成「#!/bin/bash」(先按gg,把光標定位到第1行,而後按字母A,進入編輯模式,同時>光標到行末尾,進行修改操做,完成後按ESC)。

    (24) 在第1行下面插入新的一行,並輸入「# Hello!」(按o進入編輯模式,同時光標向下另起一行,輸入「# Hello!」)。

    (25) 保存文檔並退出(按Esc鍵,輸入「:wq」)。

8、直播課

相關文章
相關標籤/搜索