1. 程式人生 > >進入編輯模式& vim 命令模式 &vim 實踐

進入編輯模式& vim 命令模式 &vim 實踐

img 字符 ssi 右移 分享圖片 ctrl 技術 標定 向上

進入編輯模式

小寫i在當前字符前插入

大寫I 在光標所在行的行首插入

大寫O 在光標上面一行插入編輯

小寫o在光標下面一行插入編輯

小寫a 在光標後面插入寫(a是after的縮寫)

大寫A在光標所在行的行末插入編輯

命令模式

/ 光標之後查找匹配字符串 --- /word ----- shift + n 向上查找

?光標之前查找特定字符串----?word

1,100s/User/xiaobo/g------1到100行,s表示開始替換,把User替換成xiaobo , g 全局替換global

不加g,只會替換第一個;

把aa替換為bb,查找字符串並替換:%s /aa/bb/g -----%表示所有行

全部替換: 1,s/ftp/xiaobo/g?????s/ftp/xiaobo/g?????表示一直到末行,所有的;

/etc/hosts/xiaobo.com 把字符/etc/hosts替換為xiaobo.com

1,$s/\/etc\/hosts/xiaobo.com/g

其中\表示脫義,把/etc/hosts識別為字符串

也可以這樣寫:

1,$s#/etc/hosts#xiaobo.com#g

技術分享圖片

:1,$s/dnsmasq/aminglinux/g

註釋:1. 替換前 加“:”

2.$ 表示到行尾 當然也可以用數字表示 比如 1,100 表示第一行到第100行

3. s表示替換

4. /// 前面兩/中間寫要替換的內容 後面兩/中間寫想要替換的內容

5. g 全局變量 表示全部

脫譯:

技術分享圖片

其中/etc/hosts 中的/需要\脫譯

或者/// 改成### 或者@@@

技術分享圖片

小知識:

技術分享圖片

:wq 和:x 如果文件修改了 兩者效果一樣

如果沒修改 :wq 會修改文件的mtime :x 不做任何修改

實踐:

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

#vim /tmp/1.txt

不高亮nohl

(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”)。

進入編輯模式& vim 命令模式 &vim 實踐