国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Linux > 正文

Linux學習筆記(10)文本編輯器vim

2024-06-28 13:22:24
字體:
來源:轉載
供稿:網友
linux學習筆記(10)文本編輯器vim

vim是一個功能強大的全屏幕文本編輯器,是Linux/Unix最常用的文本編輯器,其作用是建立、編輯、顯示文本文件。vim的特點是沒有菜單,只有命令。

vim主要有三種工作模式,分別為命令模式、插入模式、編輯模式。三者的關系可由下圖來表示:

1 vim常用操作(1)插入命令

命令

作用

a

在光標所在字符后插入

A

在光標所在行尾插入

i

在光標所在字符前插入

I

在光標所在行首插入

o

在光標下插入新行

O

在光標上插入新行

(2)定位命令

命令

作用

:set nu

設置行號

:set nonu

取消行號

gg

到第一行

G

到最后一行

nG

到第n行

:n

到第n行

$

移至行尾

0

移至行首

(3)刪除命令

命令

作用

x

刪除光標所在處字符

nx

刪除光標所在處后n個字符

dd

刪除光標所在行

dG

刪除光標所在行到文件末尾內容

ndd

刪除光標所在行后n行(包括當前行)

D

刪除光標所在處到行尾內容

:n1,n2d

刪除指定范圍行

(4)復制和剪切命令

命令

作用

yy

復制當前行

nyy

復制當前行以下n行(包括當前行)

dd

剪切當前行

ndd

剪切當前行以下n行(包括當前行)

p,P

粘貼在當前光標所在行下或行上

(5)替換和取消命令

命令

作用

r

取代光標所在處字符

R

從光標所在處開始替換字符,按ESC結束

u

取消上一步操作

(6)搜索和搜索替換命令

命令

作用

/string

搜索指定字符串,搜索時忽略大小寫:set ic,取消忽略:set noic

n

搜索指定字符串的下一個出現位置

:%s/old/new/g

全文替換指定字符串

:n1,n2s/old/new/g

在一定范圍內替換指定字符串

其中g表示不詢問確認,如果是c的話表示詢問確認

(7)保存和退出命令

命令

作用

:w

保存修改

:w new_filename

另存為指定文件

:wq

保存修改并退出

ZZ

快捷鍵,保存修改并退出

:q!

不保存修改并退出

:wq!

保存修改并退出(文件所有者和root可使用)

2. vim的使用技巧

(1)將一個文件的內容導入到文本文件中,其格式為:

:r 文件名

例:創建test文本,寫入如下內容,將/etc/issue的內容復制到test文本中

[root@localhost ~]# vi testI am ws.What's your name?My name is LiMingI am glad to see you.

在最后一行的下一行插入issue的內容,在命令模式下輸入:r /etc/issue,可得:

I am ws.What's your name?My name is LiMingI am glad to see you!CentOS release 6.5 (Final)Kernel /r on an /m

(2)在不退出vim的情況下,執行相應的操作命令,其格式為:

:!命令

例:如在命令模式下執行ls命令

I am glad to see you!CentOS release 6.5 (Final)Kernel /r on an /m :!ls[No write since last change]anaconda-ks.cfg  install.log  install.log.syslog

(3)導入命令執行結果,相當于將前兩者進行綜合,其格式為:

:r !命令

例:在test的文本末尾添加日期,在命令模式下輸入:r !date,其結果為:

I am ws.What's your name?My name is LiMingI am glad to see you!CentOS release 6.5 (Final)Kernel /r on an /mFri Jan  2 06:00:55 CST 2015

(4)定義快捷鍵

可以為常用的命令定義快捷鍵,其格式為:

map 快捷鍵 觸發命令

注:快捷鍵的創建需要同時按下Ctrl+v+創建快捷鍵的字母

例1:創建一個快捷鍵,可使在行首加入注釋符#,只需在命令模式下輸入:map ^P I#<ESC>,其中^P為Ctrl+v+p同時按下后的顯示,I#即為行首插入注釋符#,<ESC>表示退出編輯模式到命令模式。

然后在第一行執行Ctrl+p,即可得到如下結果:

#I am ws.What's your name?My name is LiMingI am glad to see you!CentOS release 6.5 (Final)Kernel /r on an /mFri Jan  2 06:00:55 CST 2015

例2:創建刪除行首注釋符#的快捷鍵,在命令模式下輸入:map ^B 0x。

例3:在當前光標下為郵箱創建快捷鍵,在命令模式下輸入如下命令:

:map ^H i123@QQ.com

(5)連續注釋行,該命令與搜索替換命令1.(6)類似。如在連續多行添加注釋符#,在命令模式下輸入如下命令:

:n1,n2s/^/#/g

其中^表示行首

相對的,取消連續行注釋可以在命令模式下輸入如下命令:

:n1,n2s/^#//g

如果以"http://"表示注釋符的話,則連續注釋行可在命令模式下輸入如下命令:

:n1,n2s/^//////g

其中"/"表示轉義字符。

例:在test文本中的前兩行加入//注釋符:

//I am ws.//What's your name?My name is LiMingI am glad to see you!CentOS release 6.5 (Final)Kernel /r on an /mFri Jan  2 06:00:55 CST 2015

(6)替換

在文本文件中,可以將一個字符串替換為另一個字符串,如將mail替換為123@qq.com,其命令格式為:

:ab mail 123@qq.com

然后在文本中寫入mail,按空格或Enter鍵則mail自動替換為123@qq.com。

通常設置的快捷鍵或替換在系統重啟時會消失,如果想長時間的保存快捷鍵的定義或替換等,可以在每個用戶的家目錄(如root在/root,用戶在/home/用戶)下寫入配置文件.vimrc(root下如/root/.vimrc),然后在該配置文件中編輯模式下寫入所需要的命令,且行首無需加冒號(:)。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 上思县| 固阳县| 兖州市| 民勤县| 云林县| 威信县| 宁远县| 开阳县| 藁城市| 白山市| 许昌市| 东兰县| 锦屏县| 孟村| 新营市| 萨嘎县| 广昌县| 颍上县| 枣强县| 正镶白旗| 汽车| 元阳县| 长乐市| 吴桥县| 册亨县| 乾安县| 天全县| 沙洋县| 中宁县| 深州市| 齐齐哈尔市| 鄄城县| 丰原市| 通州市| 北安市| 武乡县| 洪雅县| 淅川县| 呼伦贝尔市| 观塘区| 夏邑县|