省流版:
- 按
Esc鍵進入普通模式。 - 將光標放在要刪除的行上。
- 鍵入
dd以將其行刪除。
轉(zhuǎn)自 vim編輯器相關(guān)操作_vim復(fù)制粘貼-CSDN博客
一、復(fù)制、粘貼
1、復(fù)制一行:按esc鍵后,按yy,再按p粘貼
2、全部復(fù)制:按esc鍵后,先按gg,然后按yG,最后按p粘貼
3、復(fù)制多行,一次粘貼:按esc鍵后,按nyy,再按p粘貼(n為從光標開始向下復(fù)制的行數(shù))
4、復(fù)制一行,多次粘貼:按esc鍵后,按yy,再執(zhí)行np粘貼(n為粘貼的次數(shù))
5、復(fù)制多行,多次粘貼:按esc鍵后,按nyy,再執(zhí)行np粘貼
vim編輯器相關(guān)操作
一、復(fù)制、粘貼
1、復(fù)制一行:按esc鍵后,按yy,再按p粘貼
2、全部復(fù)制:按esc鍵后,先按gg,然后按yG,最后按p粘貼
3、復(fù)制多行,一次粘貼:按esc鍵后,按nyy,再按p粘貼(n為從光標開始向下復(fù)制的行數(shù))
4、復(fù)制一行,多次粘貼:按esc鍵后,按yy,再執(zhí)行np粘貼(n為粘貼的次數(shù))
5、復(fù)制多行,多次粘貼:按esc鍵后,按nyy,再執(zhí)行np粘貼
二、剪切、刪除
(一) 單/多行字符的剪切與刪除
1、刪除一行:按esc鍵后,按dd刪除
2、刪除多行:按esc鍵后,按ndd刪除(n為從光標開始向下復(fù)制的行數(shù))
3、全部刪除:按esc鍵后,先按gg。然后按dG刪除
4、其他操作
d 剪切選定塊到緩沖區(qū);
d^ 剪切至行首
d$ 剪切至行尾
dw 剪切一個word
dG 剪切至檔尾
**剪切與移動只差一個粘貼p**
需求:如要實現(xiàn)移動文本中的100-104行至200-204行位置
實現(xiàn):當(dāng)光標在100行時執(zhí)行4dd,然后在200行位置執(zhí)行p粘貼
(二)單/多個字符的剪切與刪除
1、刪除光標處字符
x:執(zhí)行一次,光標處的一個字符就被刪除
nx:光標處往后的n個字符被刪(包括光標處的字符)
2、刪除光標前字符
X:執(zhí)行一次,光標前的一個字符被刪
nX:執(zhí)行一次,光標前的n個字符被刪
三、撤銷
u :撤銷上一步的操作
Ctrl+r :恢復(fù)上一步被撤銷的操作
四、vim查找
1、普通模式中按斜桿/+要查詢的內(nèi)容后回車
2、按n向下查,按N向上查詢
五、vim中全局替換
在vim中進行全局替換,可以使用:g和:s命令的組合
1、對包含pattern的所有行,查找其中的old字符串,并將其替換為new字符串
:g/pattern/s/old/new/g
2、對全局文件進行替換
:%s/old/new/g
3、對當(dāng)前行進行替換
:s/old/new/g
4、想確認每次替換,可以添加c標志
:%s/old/new/gc
六、設(shè)置行號
1、普通模式下執(zhí)行:set number 或者簡寫為:set nu 來顯示行號
2、永久顯示行號:在 ~/.vimrc 文件中添加 set number ,再次用vim打開文件,即可自動生成行號
3、跳轉(zhuǎn)到指定行號:
在命令模式下(按 Esc 進入),輸入 :行號,例如 :10 跳轉(zhuǎn)到第10行。
或者使用快捷鍵 行號G,例如 10G 也會跳轉(zhuǎn)到第10行。
七、光標移動
常用的光標移動快捷鍵
h:向左移動一個字符
j:向下移動一行
k:向上移動一行
l:向右移動一個字符
高級的光標移動快捷鍵
w:向后移動到下一個單詞的開頭
b:向前移動到前一個單詞的開頭
0:移動到行首
^:移動到行的第一個非空白字符
$:移動到行尾
gg:移動到文件的開頭
G:移動到文件的結(jié)尾
[[:跳到當(dāng)前或前一個代碼塊的開始
]]:跳到當(dāng)前或下一個代碼塊的開始
{:向上移動到同一列的上一個代碼塊開始
}:向下移動到同一列的下一個代碼塊開始
如果您是系統(tǒng)管理員或只是普通的Linux用戶,了解Vim的基礎(chǔ)很重要。通常,在處理文本文件時,您需要刪除一行或多行內(nèi)容。本文介紹了如何在Vim/Vi中刪除行
Vim或其初期產(chǎn)品Vi已預(yù)先安裝在大多數(shù)Linux發(fā)行版和macOS中。 如果您是系統(tǒng)管理員或只是普通的Linux用戶,了解Vim的基礎(chǔ)很重要。
通常,在處理文本文件時,您需要刪除一行或多行內(nèi)容。
本文介紹了如何在Vim/Vi中刪除行。
刪除單行
在Vim中刪除行的命令是dd。
以下是刪除行的分步說明:
- 按
Esc鍵進入普通模式。 - 將光標放在要刪除的行上。
- 鍵入
dd以將其行刪除。
多次按dd將刪除多行。
刪除多行
要一次刪除多行,請在dd命令前添加要刪除的行數(shù)。 例如,要刪除五行,您可以執(zhí)行以下操作:
- 按
Esc鍵進入普通模式。 - 將光標放在要刪除的第一行。
- 鍵入
5dd刪除接下來的五行。
刪除一系列的行
刪除一系列行的語法如下:
:[start],[end]d
例如,要刪除從3到5的行,您可以執(zhí)行以下操作:
- 按
Esc鍵進入正常模式。 - 鍵入
:3,5d并按enter鍵刪除3到5行。
您也可以使用以下字符指定范圍:
-
.(點)-當(dāng)前行。 -
$-最后一行。 -
%-所有行。
以下是一些示例:
-
:.,$d-從當(dāng)前行到文件末尾。 -
:.,1d-從當(dāng)前行到文件開頭。 -
10,$d-從第10行到文件末尾。
刪除所有行
要刪除所有行,可以使用代表所有行的%符號或1,$范圍:
- 按
Esc鍵進入普通模式。 - 鍵入
%d,然后按Enter鍵以刪除所有行。
刪除匹配指定正則表達式的行
用于基于特定模式刪除多行的語法如下:
:g/<pattern>/d
全局命令(g)告訴刪除命令(d)刪除包含<pattern>的所有行。
要匹配與模式不匹配的行,請在模式之前添加感嘆號(!):
:g!/<pattern>/d
模式可以是文字匹配或正則表達式。 以下是一些示例:
-
:g/foo/d-刪除所有包含字符串“ foo”的行。 它還會刪除在“ foo”等較大字詞中嵌入“ foo”的行。 -
:g!/foo/d-刪除所有不包含字符串“ foo”的行。 -
:g/^#/d-從Bash腳本中刪除所有評論。 模式^#表示每行以#開頭。 -
:g/^$/d-刪除所有空白行。 模式^$匹配所有空行。 -
:g/^\s*$/d-刪除所有空白行。 與前一個命令不同,這還會刪除具有零個或多個空格字符(\s*)的空白行。
結(jié)論
我們向您展示了如何在Vim中刪除行。