MSCBSC 移動通信論壇
搜索
登錄注冊
網(wǎng)絡(luò)優(yōu)化工程師招聘專欄 4G/LTE通信工程師最新職位列表 通信實(shí)習(xí)生/應(yīng)屆生招聘職位

  • 閱讀:3533
  • 回復(fù):0
CentOS Linux之路【vi/vim相關(guān)】
細(xì)阿哥
中級會員
鎵嬫満鍙風(fēng)爜宸查獙璇? style=


 發(fā)短消息    關(guān)注Ta 

積分 500
帖子 100
威望 9542 個
禮品券 15 個
專家指數(shù) 0
注冊 2009-2-25
專業(yè)方向  通信
回答問題數(shù) 0
回答被采納數(shù) 0
回答采納率 0%
 
發(fā)表于 2019-09-16 22:59:42  只看樓主 

所有的 Unix/linux 系統(tǒng)都會內(nèi)建 vi 文書編輯器,其他的文書編輯器則不一定會存在。但是目前我們使用比較多的是 vim 編輯器。

Vim是從 vi 發(fā)展出來的一個文本編輯器。提供了代碼補(bǔ)完、編譯及錯誤跳轉(zhuǎn)等方便編程的功能特別豐富,在程序員中被廣泛使用。

簡單的來說, vi 是老式的字處理器,不過功能已經(jīng)很齊全了,但是還是有可以進(jìn)步的地方。 vim 則可以說是程序開發(fā)者的一項很好用的工具。

基本上 vi/vim 共分為三種模式,分別是命令模式(Command mode),插入模式(Insert mode)末行模式(Last line mode)

1.   如何進(jìn)入插入模式

命令

說明

i

光標(biāo)前一個字符插入

I

行首插入

a

光標(biāo)后一個字符插入

A

行末插入

o

向下新開一行,插入行首

O

向上新開一行,插入行道

 

2.   如何進(jìn)入命令模式

ESC 從插入模式或末行模式進(jìn)入命令模式

在命令模式下移動光標(biāo):

命令

說明

h

左移

j

下移

k

上移

l

右移

 

 

3.   不同模式間的互相轉(zhuǎn)換

命令模式->末行模式

輸入冒號  :

末行模式->命令模式

輸入兩次 ESC

 

 

4.   命令模式的命令:

 

命令說明
0移動至絕對行首
^移動至相對行首
$移動至行尾
j向下移動
k向上移動
h向左移動
l向右移動
M移動至中間行
L移動至最后一行的行首
行號+G移動至指定行
G移動至文件末尾
gg移動至文件開頭
w/W向后移動一個字
b向前移動一個字
{按段移動,上移
}按段移動,下移
ctl+d向下翻半屏
ctl+u向上翻半屏
ctl+f向下翻一屏
ctl+b向上翻一屏



4.1   關(guān)于刪除 

命令

說明

x

刪除光標(biāo)后一個字符

X

刪除光標(biāo)前一個字符

dd

刪除光標(biāo)所光標(biāo)所在行

n

dd刪除光標(biāo)后指定行數(shù)

D

刪除光標(biāo)后本行所有內(nèi)容,包含光標(biāo)所在字符

d0

刪除光標(biāo)前本行所有內(nèi)容,不包含光標(biāo)所在字符

全部刪除

按esc后,然后dG

dw

刪除光標(biāo)開始位置字符,包含光標(biāo)所在字符

 

4.2   關(guān)于撤銷命令

命令

說明

u

一步一步撤銷

ctl+r

反撤銷

 

4.3   關(guān)于重復(fù)命令

命令

說明

.

重復(fù)上一次操作的命令

4.4   關(guān)于文本行移動

命令

說明

>> 

文本行右移

<< 

文本行左移

4.5   關(guān)于選擇行

v 進(jìn)入“可視”,按鍵盤選擇行

 

4.6   關(guān)于復(fù)制/粘貼

命令

說明

yy

復(fù)制當(dāng)前行

n yy

復(fù)制n行

yw

復(fù)制單詞

p

在光標(biāo)所在位置向下新開辟一行,粘貼

 

 

4.7   關(guān)于復(fù)制多行

任務(wù):將第9行至第15行的數(shù)據(jù),復(fù)制到第16

915 copy 16  或:9,15 co 16
由此可有:
915 move 16   :9,15 m 16 將第9行到第15行的文本內(nèi)容到第16行的后面  

 

復(fù)制多行,然后粘貼。
1.
將光標(biāo)移動到要復(fù)制的文本開始的地方,按v進(jìn)入可視模式。
2.
將光標(biāo)移動到要復(fù)制的文本的結(jié)束的地方,按y復(fù)制。此時vim會自動將光標(biāo)定位到選中文本的開始的地方,并退出可視模式。
3.
移動光標(biāo)到文本結(jié)束的地方,按p粘貼。

 

全部刪除:按esc后,然后dG
全部復(fù)制:按esc后,然后ggyG

4.8   關(guān)于可視模式

命令

說明

v

按字符移動,選中文本

V

按行移動,選中文本可視模式可以配合 d,y,>>,<<實(shí)現(xiàn)對文本塊的刪除,復(fù)制,左右移動

 

4.9   末行模式下 . 點(diǎn)號表示當(dāng)前行;  $ 表示末行

例如,在末行模式下輸出

命令

說明

1,.-3y

表示復(fù)制第1行至光標(biāo)所在位的前3行

1,.+3y

表示復(fù)制第1行至光標(biāo)所在位的后3行

.,.+3d

表示刪除光標(biāo)所在行至光標(biāo)往行3行

 

4.10     關(guān)于替換操作

命令

說明

r

替換當(dāng)前字符

R

替換當(dāng)前行光標(biāo)后的字符

 

4.11     關(guān)于查找命令

命令

說明

/str

光標(biāo)位置開始向下查

?str

光標(biāo)位置開始向上查找

n

下一個

N

上一個

 

例如,查找Sock

image.png

4.12     關(guān)于替換命令s

abc 全部替換成123

末行模式下,將光標(biāo)所在行的abc替換成123

:%s/abc/123/gi  %  表示全部,整個文檔;

                            g 表示全部替換,

                            i  表示忽略大小寫,不加i表示區(qū)別大小寫

末行模式下,將第一行至第10行之間的abc替換成123

:1,10s/abc/123/g

 

末行模式下,感嘆號!+命令可以在vi模式下執(zhí)行命令,例如

:!cp /root/abc.txt /root/abcd.tx

 

4.13     關(guān)于保存退出

所處模式

命令

末行模式下

:wq 

:x

命令模式下

ZZ

 

 

4.14     關(guān)于不保存退出

 

所處模式

命令

末行模式下

:q!

 

5.   其它說明

如何顯示行號

1.    末行模式輸入: set number/set nu 可以顯示行號

 

2.修改當(dāng)前用戶vimrc文件:

arvindeMacBook-Air:~ arvin$ vi ~/.vimrc

set nu    顯示行號

set ts=4  TAB縮進(jìn)字符數(shù)

 

Set tabstop=4

Set shiftwidth=4

 

【其中】:~/ 表示當(dāng)前用戶的家目錄

當(dāng)用vi編輯文件時,非正常退出時將產(chǎn)生一個隱藏文件,原文件將不能修改,需要將隱藏文件刪除后才可以修改


掃碼關(guān)注5G通信官方公眾號,免費(fèi)領(lǐng)取以下5G精品資料
  • 1、回復(fù)“YD5GAI”免費(fèi)領(lǐng)取《中國移動:5G網(wǎng)絡(luò)AI應(yīng)用典型場景技術(shù)解決方案白皮書
  • 2、回復(fù)“5G6G”免費(fèi)領(lǐng)取《5G_6G毫米波測試技術(shù)白皮書-2022_03-21
  • 3、回復(fù)“YD6G”免費(fèi)領(lǐng)取《中國移動:6G至簡無線接入網(wǎng)白皮書
  • 4、回復(fù)“LTBPS”免費(fèi)領(lǐng)取《《中國聯(lián)通5G終端白皮書》
  • 5、回復(fù)“ZGDX”免費(fèi)領(lǐng)取《中國電信5G NTN技術(shù)白皮書
  • 6、回復(fù)“TXSB”免費(fèi)領(lǐng)取《通信設(shè)備安裝工程施工工藝圖解
  • 7、回復(fù)“YDSL”免費(fèi)領(lǐng)取《中國移動算力并網(wǎng)白皮書
  • 8、回復(fù)“5GX3”免費(fèi)領(lǐng)取《 R16 23501-g60 5G的系統(tǒng)架構(gòu)1
  • 對本帖內(nèi)容的看法? 我要點(diǎn)評

     
    [充值威望,立即自動到帳] [VIP貴賓權(quán)限+威望套餐] 另有大量優(yōu)惠贈送活動,請光臨充值中心
    充值擁有大量的威望和最高的下載權(quán)限,下載站內(nèi)資料無憂

    快速回復(fù)主題    
    標(biāo)題
    內(nèi)容
     上傳資料請點(diǎn)左側(cè)【添加附件】

    當(dāng)前時區(qū) GMT+8, 現(xiàn)在時間是 2025-05-22 18:32:38
    渝ICP備11001752號  Copyright @ 2006-2016 mscbsc.com  本站統(tǒng)一服務(wù)郵箱:mscbsc@163.com

    Processed in 0.621952 second(s), 13 queries , Gzip enabled
    TOP
    清除 Cookies - 聯(lián)系我們 - 移動通信網(wǎng) - 移動通信論壇 - 通信招聘網(wǎng) - Archiver