從編輯模式返回通常模式「Esc」vim
:「nohl」=no high light 無高亮,取消內容中高亮標記
"x":保存退出,和wq的區別是,當進入一個文件未進行編輯時,使用該命令不會改變文件的atime。bash
eg1:spa
查找abc,替換爲ABC(某範圍內所有替換)
‘/1,100s/abc/ABC/g’ 即:將第1行至第100行內全部abc替換成ABC。(s:替換;g:=global,所有。若是不加g則只會替換每行第一個abc),‘/’能夠替換成#或@。.net
eg2:對象
查找/etc/111.txt,替換爲adai
此時若是使用‘/’執行該命令會致使其與被替換對象衝突,因此使用#來執行該命令(該方法經常使用),若是仍然使用‘/’來執行命令,須要以下操做:
‘/ \ /etc \ /111.txt/adai/g’在此,‘\’是託譯符,表示不識別其後面的字符dns
# cp /etc/dnsmasq.conf /tmp/1.txt文檔
(1) 分別向下、向右、向左、向上移動6個字符(6j 6l 6h 6k)。字符串
(2) 分別向下、向上翻兩頁(分別按兩次ctrl+f和ctrl+b)。get
(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 而後按j向右移動光標找到"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」)。