天天看點

VIM編輯器與Linux自有服務一、指令模式(重點)二、末行模式(重點)三、編輯模式四、VIM編輯器實用功能五、Linux遠端管理軟體MX

一、指令模式(重點)

1、進入指令模式

當我們使用vim指令打開檔案時,預設進入的就是指令模式。

那指令模式有哪些作用?我們能使用指令模式做什麼呢?

答:光标移動、複制、剪切與删除、撤銷與恢複

2、光标移動

☆ 把光标移動到行首或行尾(重點)

一行:

光标移動到行首,按鍵:

shift + 6 或 ^

(T 字母上面的6,不要按小鍵盤的6)

光标移動到行尾,按鍵:

shift + 4 或 $

(R 字母的左上角的4,不是小鍵盤的4)

一個檔案:

光标移動到首行的行首,按鍵:

gg

光标移動到末行的行首,按鍵:

G [Capslk 再加 G 鍵] / [Shift + G 鍵]

☆ 翻屏(了解)

向上 翻屏,按鍵:

PgUp

向下 翻屏,按鍵:

PgDn

向上翻半屏,按鍵:

ctrl + u (up)

向下翻半屏,按鍵:

ctrl + d (down)

☆ 向上/下/左/右移動指定的行/列(了解)

數字 + 方向鍵(上下左右),比如5 + 向上方向鍵,代表将光标向上移動5行

☆ 快速定位到指定行(重點)

數字 + G(shift + g) , 277G

☆ 以目前行為準向上/下移動指定行(了解)

數字+/-【等價于數字】

5 - :代表向上移動5行

5 +(shift + = ) :代表向下移動5行

3、複制(重點)

==① 複制光标所在行==

按鍵:yy

粘貼:在想要粘貼的地方按下p 鍵【将粘貼在光标所在行的下一行】,如果想粘貼在光标所在行之前,則使用P 鍵(Shift鍵 + p)

==② 以光标所在行為準(包含目前行),向下複制指定的行數==

按鍵:數字yy,如5yy

③ 可視化模式下複制(了解)

按鍵:v(可視),然後按下↑ ↓ ← →方向鍵來選中需要

複制的區塊,按下y 鍵進行複制(不要按下yy),最後按下p 鍵粘貼

退出可視模式按下Esc

4、剪切與删除(重點)

==① 剪切/删除光标所在行==

按鍵:dd (删除之後下一行上移)

注意:dd 嚴格意義上說是剪切指令,但是如果剪切了不粘貼就是删除的效果。

==② 剪切/删除光标所在行為準(包含目前行),向下删除/剪切指定的行==

按鍵:數字dd (删除之後下一行上移)

粘貼:p鍵或P鍵

③ 剪切/删除光标所在的目前行(光标所在位置)之後的内容,但是删除之後下一行不上移

按鍵:D (删除之後目前行會變成空白行)

④ 可視化删除(了解)

按鍵:v(可視),上下左右移動,按下D 表示删除選中行,d 表示删選中塊

5、撤銷與恢複(重點)

撤銷:u(undo),類似Windows中的ctrl + z

恢複:ctrl + r 恢複(取消)之前的撤銷操作【重做,redo】,類似Windows中的ctrl + y

總結:重點看這裡

光标移動:移動到行首+行尾、快速定位

行首shift + 6(^)、行尾shift + 4($)

檔案:

行首(第一行)gg、行尾(最後一行)G

快速定位:數字行 + G,200G

複制與粘貼:

yy :複制一行

數字yy :複制指定的行數

p或P(p粘貼内容到目前行的下一行,P粘貼到目前行的上一行)

剪切與删除:

dd:删除一行

數字dd :删除指定的行數

D:删除所在行,但是下方内容不上移

撤銷與恢複:u 與 Ctrl + r

二、末行模式(重點)

1、如何進入末行模式

指令模式、編輯模式、末行模式

指令模式(預設) => a或i =>編輯模式

編輯模式退出到指令模式 => 按Esc鍵

指令模式 => 按冒号: =>末行模式

末行模式 => 按兩次Esc或删除冒号 => 指令模式

2、末行模式的基本功能

☆ 儲存(寫入内容到硬碟)

:w => w(write)寫入,儲存

☆ 退出(從vim編輯器中退出)

:q => q(quit)退出,但是退出之前一定要儲存,否則vim編輯器不允許退出

☆ 儲存并退出

:wq

特别說明:wq除了可以實作儲存與退出,還可以指定檔案的名稱。

# vim
編輯...
:wq 檔案名稱           

☆ 強制(!)

:w! => 強制儲存(一般更改系統檔案時,需要添加此選項)

:q! => 強制退出

:wq! => 強制儲存并退出

☆ 調用外部(了解)

:!外部Linux指令,可以實作在vim編輯器中執行外部指令           

案例:檢視計算機的網卡資訊

:!cat /etc/sysconfig/network-scripts/ifcfg-eth0           

退出直接按Enter回車

☆ 搜尋

指令模式下直接輸入

/關鍵詞

,再按下回車 【按下/也是進入末行模式的方式之一】

在搜尋結果中切換上/下一個結果:N/n (大寫N代表上一個結果,小寫n代表next)

如果需要取消高亮,則需要在末行模式中輸入:

:noh

【no highlight】

☆ 替換

  • 隻替換光标所在這一行

:s/搜尋的關鍵詞/新的内容

替換==光标所在行==的第一處符合條件的内容(隻替換1次)

:s/搜尋的關鍵詞/新的内容/g

替換==光标所在行==的全部符合條件的内容

  • 整個檔案的替換操作

:%s/搜尋的關鍵詞/新的内容

替換整個文檔中每行第一個符合條件的内容

:%s/搜尋的關鍵詞/新的内容/g

替換整個文檔的符合條件的内容

擴充:

:%s#搜尋的關鍵詞#替換後的内容#g           

☆ 顯示行号

:set nu           

☆ 取消行号

:set nonu           

3、末行模式的擴充功能

☆ 打開多個檔案(了解)

# vim 檔案名稱1 檔案名稱2 檔案名稱3           

:files,檢視目前打開的多個檔案

:next,向下切換檔案

:prev,向上切換檔案

☆ 多行複制、剪切與删除操作(非常重要)

與數字yy、數字dd相比優勢:

可以設定複制、剪切與删除的開始行号與結束行号

複制文法

:開始行号,結束行号y

,例如輸入

:1,10y

剪切删除文法

:開始行号,結束行号d

:1,10d

粘貼,必須在指令模式下使用小p

------------------------------------------- 華麗的分割線 -----------------------------------------------

一步到位的複制、剪切與删除(複制-粘貼、剪切-粘貼)

一步到位的複制

:開始行号,結束行号 co 指定的行号
從開始行号到結束行号開始複制,複制到指定行号的後面           

一步到位的剪切

:開始行号,結束行号 m 指定的行号
從開始行号到結束行号開始剪切,剪切完成後直接移動到指定行号的後面           

☆ 快速跳轉到指定行(末行)

:指定的行号           

案例:快速跳轉到第500行

:500           

☆ paste模式

什麼時候需要用到paste模式?

答:将來我們複制帶有格式的内容時,必須使用paste模式,否則複制過來的内容格式會比較混亂。

在粘貼資料之前,輸入下面指令開啟paste模式

:set paste

粘貼完畢後,輸入下面指令關閉paste模式

:set nopaste

作用:保證粘貼時,保持複制時的原有格式

儲存 => :w

退出 => :q

儲存并退出 => :wq

搜尋 => /關鍵詞(指令模式按斜杠/進入末行模式,然後寫關鍵詞搜尋)

替換 =>

替換光标所在這行關鍵詞

  • :s/搜尋的内容/替換後的内容 => 第一個滿足條件的結果
  • :s/搜尋的内容/替換後的内容/g => 這一行所有滿足條件的結果全部替換

替換整個檔案中的關鍵詞

  • %s/搜尋的内容/替換後的内容 => 替換整個文檔中,每一行第一個滿足條件的結果
  • %s/搜尋的内容/替換後的内容/g => 替換整個文檔中所有滿足條件的結果

顯示行号與取消行号

:set nu

:set nonu

多行複制、剪切與删除

:開始行号,結束行号y

:開始行号,結束行号d

一步到位的複制與剪切

:開始行号,結束行号 co 指定行号

:開始行号,結束行号 m 指定行号

快速調整 :行号

paste模式 => :set paste

三、編輯模式

1、如何進入編輯模式

想進入編輯模式,你必須位于指令模式。

2、小a與小i差別

小a:代表在光标所在字元的後面開始插入新内容

小 i:代表在光标所在字元的前面開始插入新内容

四、VIM編輯器實用功能

1、代碼着色

之前說過vim 是vi 的更新版本,其中比較典型的差別就是vim 更加适合coding,因為vim比vi 多一個代碼着色的功能,這個功能主要是為程式員提供程式設計語言升的文法顯示效果,如下:

# vim demo.php
<?php
    echo "hello world";
?>           

在實際應用中,我們如何控制着色顯示與否?

syntax:文法,臨時調整

開啟顯示

:syntax on

關閉顯示

:syntax off

2、vim電腦

① 進入編輯模式

② 按下按鍵

ctrl + R 鍵

,然後輸入

=

,此時光标會變到最後一行

③ 輸入需要計算的内容,按下回車

3、vim編輯器的配置檔案(重點)

vim編輯器屬于Linux系統軟體,隻要是軟體都會有對應的配置檔案:

第一種:在末行模式下進行配置(:set nu臨時)

第二種:在~/.vimrc檔案,配置就是永久的。(個人自定義)=> 針對使用者本身

# vim ~/.vimrc
set nu
syntax on           

第三種:在/etc/vimrc檔案,屬于vim編輯器的系統配置檔案。(系統全局配置)=> 針對所有人

# vim /etc/vimrc
指令模式下按G,切換到最後一行,添加配置資訊
set nu
syntax on           

vim啟動 =>==加載/etc/vimrc== =>==加載~/.vimrc檔案==(vim加載的順序)

問題:如果在/etc/vimrc檔案中與~/.vimrc檔案中添加同樣的配置,到底遵循誰呢?

答:個人配置檔案會覆寫系統檔案

/etc/vimrc => set nu

~/.vimrc => set nonu

4、vim編輯器的異常退出

什麼是異常退出?

所謂的異常退出就是沒有儲存檔案,而直接退出了檔案。這個時候就會在計算機中産生一個交換檔案。如.xxx檔案名稱.swp檔案

解決方案:最終的解決思路都是删除.swp的交換檔案

方案一:直接按大寫字母D,讓系統自動删除交換檔案

方案二:直接按大寫字母Q,退出vim編輯器。然後使用rm指令手工删除.檔案名稱.swp檔案

# rm .readme.txt.swp           

5、别名機制

作用:相當于建立一些屬于自己的自定義指令

例如:在windows下有cls 指令,在Linux下可能因為沒有這個指令而不習慣清屏。現在可以通過别名機制來解決這個問題,可以自己創造出cls指令。

==别名機制依靠一個别名映射檔案:~/.bashrc==

基本文法:

# vim ~/.bashrc           

設定别名:在Linux作業系統下建立一個cls指令也可以實作清屏操作

# vim ~/.bashrc
alias cls='clear'
# source ~/.bashrc           

案例:要求給root 使用者建立一個指令 “cc”,實作運作“cc”指令之後統計出目前“/”下有多少個文檔(包含隐藏文檔)。

# vim ~/.bashrc
alias cc='ls -a / | wc -l'
# source ~/.bashrc           

擴充:管理多台伺服器時,也可以使用别名機制

# vim ~/.bashrc
alias server01='ssh [email protected]'
alias server02='ssh [email protected]'
# source ~/.bashrc           

6、vim編輯器的退出方式

末行模式

:wq退出,但是vim編輯器還有一種退出方式,使用:x

:x既有儲存又有退出的功能

:wq和:x的本質差別?

如果檔案沒有被修改,但是使用wq 進行退出的話,則檔案的修改時間會被更新;但是如果檔案沒有被修改,使用x 進行退出的話,則檔案修改時間不會被更新的;主要是會混淆使用者對檔案的修改時間的認定。

但是:不要使用X,不要使用X,不要使用X,X 表示對檔案進行加密操作。

五、Linux遠端管理軟體MX

1、為什麼需要MX

在未來的運維工作中,我們都是通過遠端管理的方式對伺服器進行操作。這個時候就需要一個強大的遠端管理軟體。

國内國外:XShell軟體(收費軟體)、SecureCRT(收費軟體)、Putty.exe(超小型的遠端管理軟體)、MobaXterm(MX、支援免費版+收費版)

2、擷取Linux伺服器的IP位址

# ifconfig
10.1.1.14           

3、使用MX連結Linux

第一步:點選Session會話

第二步:設定遠端計算機的IP位址、使用者名稱

第三步:還可以設定書簽

設定完成後,點選連結即可。

第四步:輸入root賬号的密碼,即可遠端連結到Linux伺服器(預設:123456)

第五步:上傳或下載下傳檔案