linux--vim程序编辑器

一、简介

1、vi编辑器是Linux和Unix上最基本的文本编辑器,工作在字符模式下。由于不需要图形界面,vi是效率很高的文本编辑器。尽管在Linux上也有很多图形界面的编辑器可用,但vi在系统和服务器管理中的功能是那些图形编辑器所无法比拟的。

2、系统管理员的重要工作就是修改与设置某些重要软件的配置文件,因此至少要学会一种以上的命令行界面的文本编辑器。在所有的Linux distributions上头都会有一套文本编辑器就是vi,而且很多软件默认也是使用vi作为编辑的界面。

3、vim是vi的高级版,vim可以使用不同的颜色显示文字内容,还能够进行诸如shell脚本,C等程序编辑功能,vim可以视为程序编辑器。

 

二、vi 与 vim 

1、学习vim的必要性

(1)不同的Linux distribution 各有不同版本的附加编辑器,但是所有的UNIX Like系统都会内置vi文本编辑器

(2)许多软件的编辑接口都会主动调用vi;

(3)vim 具有程序编辑的能力,以字体的颜色辨别语法的正确性;

(4)操作简单,编程速度特别快。

2、vi 的使用

(1)vi 共分3种模式:一般模式、编辑模式和命令行模式。

a、一般模式

vi打开一个文件就直接进入一般模式了(默认),此模式下,可上下左右移动光标,可删除字符或者是删除整行,复制、粘贴文件数据。

b、编辑模式

“i、l、o、O、a、A、r、R”任意字母按下直接进入编辑模式。此时界面一般会出现INSERT或REPLACE的字样,此标志可以直接进行编辑了。【Esc】按键直接回到一般模式。

c、命令模式

在一般模式下,输入“:、/、?”3个中的任一个,可以将光标移至界面的最后一行。此模式下,可以进行查找数据的操作,而读取、保存、大量替换字符、离开vi、显示行号等操作。

(2)简单执行范例

a、使用vi 进入一般模式

//
vi test.txt
//
使用vi 打开一个新的文件使用vi 打开一个旧的文件

右边的图下面“/etc/man.config”指的是文件名,141L指的是行数,4617C指的是4617个字符。

b、在vi 里面,【Tab】键所得到的结果具体是几个空格符是自己配置的;

c、【Esc】回到一般模式,此时输入“:wq”保存后离开。

d、如果创建的 test.txt 权限是 -r--r--r--时,没有写的权限,可以使用“强制写入”方式,“:wq!”

(3)按键说明

a、移动鼠标

按键说明
h 或向左方向键游标向左移动一个字元
j 或向下方向键游标向下移动一个字元
k 或向上方向键游标向上移动一个字元
l 或向右方向键游标向右移动一个字元
[ctrl]+[f]屏幕向下移动一页,相当于[Page Down](常用)
[ctrl]+[b]屏幕向上移动一页,相当于[Page Up](常用)
[ctrl]+[d]屏幕向下移动半页
[ctrl]+[u]屏幕向上移动半页
n+[Space]n 表示数字,按下数字后再按空格键,游标会向右移动到这一行的第 n 个字元。
功能键[Home]或 0游标移动到这一行的第一个字元处
功能键[End]或 $游标移动到这一行的最后一个字元处 (常用)
H游标移动到这个屏幕最上方那一行的第一个字元
M游标移动到这个屏幕中央那一行的第一个字元
L游标移动到这个屏幕最下方那一行的第一个字元
G游标移动到这个档案的最后一行 (常用)
nGn 为数字。游标移动到这个档案的第 n 行
gg游标移动到这个档案的第一行 (常用)
n+[Enter]n 为数字。游标向下移动 n 行 (常用)

b、搜索与取代

按键说明
/word在当前游标所在位置往下寻找关键字为 word 的字符串 (常用)
?word在当前游标所在位置往上寻找关键字为 word 的字符串
n这里的 n 是按键 n。代表重复前一个搜索动作
N这里的 N 是按键 N。功能与 n 相反,代表反向执行前一个搜索动作
:n1,n2s/word1/word2/gn1 与 n2 都为数字,表示行数。可在第 n1 行与第 n2 行之间寻找 word1 字符串,并替换为 word2 (常用)
:1,$s/word1/word2/g表示从第一行到最后一行,将 word1 字符串替换为 word2 (常用)
:1,$s/word1/word2/gc表示从第一行到最后一行,也是将 word1 字符串替换为 word2,不同之处是在替换前显示提示字元,由用户确认是否最终替换 (常用)

* 使用 /word 的同时,配合使用 n 或者 N,搜索可以变得很方便的啦 :)

c、删除、复制以及粘贴

按键说明
[Del] 或 x向后删除一个字元 (常用)
X向前删除一个字元 (常用)
nxn 为数字,表示连续向后删除 n 个字元
dd删除游标所在的那一行 (常用)
nddn 为数字,删除游标所在的那一行往下数 的 n 个行 (常用)
d1G删除游标所在的那行到第一行的所有数据
dG删除游标所在的那行到最后一行的所有数据
d$删除游标所在处到该行的最后一个字元
d0是数字 0,删除游标所在处到该行的第一个字元
yy复制游标所在的那一行 (常用)
nyyn 为数字, 复制游标所在的那一行往下数 n 行 (常用)
y1G复制游标所在行到第一行的所有数据
yG复制游标所在行到最后一行的所有数据
y0复制游标所在的字元到该行行首的所有数据
y$复制游标所在的字元到该行行尾的所有数据
p将已复制的数据粘贴在游标所在的那一行的下一行 (常用)
P将已复制的数据粘贴在游标所在的那一行的上一行,原来游标所在的那一行会被推后一行 (常用)
J将游标所在的行与下一行的数据合并为一行
u撤销前一个操作 (常用)
[ctrl]+r重做上一个被撤销的操作 (常用)
.这是小数点,表示重复前一个操作 (常用)

* 最后三个按键乃是神器,熟悉后记得经常使用它们,会让你觉得使用 vim 是一件很快乐的事情哦 :)

d、一般指令模式切换到编辑模式

按键说明
i进入插入模式;从目前游标所在处插入
I进入插入模式;从目前游标所在行的第一个非空白字元处插入 (常用)
a进入插入模式;从目前游标所在处的下一个字元开始插入
A进入插入模式;从目前游标所在行的最后一个字元开始插入 (常用)
o是字母,表示进入插入模式;从目前游标所在行的下一行处插入新的一行
O是字母,表示进入插入模式;从目前游标所在行的上一行处插入新的一行 (常用)
r进入取代模式;只会取代游标所在的那个字元一次
R进入取代模式;会一直取代游标所在的文字,直到按下 [Esc] 为止 (常用)
[Esc]从编辑模式返回到一般指令模式 (常用)

* 在左下角处看到 INSERT 或 REPLACE 时,才表示已经进入编辑模式

e、一般指令模式切换到指令模式

按键说明
:w将编辑的文件写入硬盘 (常用)
:w!如果文件为只读状态,可以强制写入硬盘,是否写入成功,与你所拥有的文件权限有关
:q离开 vi (常用)
:q!即使文件未保存,仍强行离开 vi
:wq文件写入硬盘后(即保存)离开 vi (常用)
:wq!文件强制写入硬盘后(即保存)离开 vi
ZZ大写字母 Z,如果文件没有修改,则直接离开;如果文件被修改,则保存后离开
:w [filename]将当前文件另存为另一个文件,这个新文件的保存路径为当前路径
:r [filename]在当前文件中读入另一个文件的数据,插入到当前游标所在列的后面
:n1,n2 w [filename]将第 n1 行到第 n2 行的数据储存为新的文件
:! command暂时离开 vi 到指令列模式下执行 command 的显示结果

* ! 表示强制执行

f、vim特有功能:区域选择

 

按键说明
v字符选择,移动游标,游标经过的地方会反白选择
V行选择,移动游标,游标经过的行会反白选择
[Ctrl]+v区块选择,移动游标以长方形方块的方式反白选择
y复制反白选择的地方
d删除反白选择的地方
p将之前复制的区块,粘贴在游标所在处

g、vim特有功能:多文件编辑

按键说明
:n编辑下一个文件
:N编辑上一个文件
:files列出 vim 所打开的所有文件

使用 vim a.txt b.txt … 指令,就能一次打开多个文件

h、vim特有功能:多视窗

 

按键说明
:sp [filename]开启一个新视窗。如果有加 filename,表示是在新视窗开启一个新文件;否则,表示两个视窗为同一个文件的内容(即同步显示)
[ctrl]+w+向下方向键先按下[ctrl]不放,然后再按下 w 后放开所有按键,最后再按下向下方向键,游标就会移动到下方的视窗
[ctrl]+w+向上方向键按键方法同上,游标会移动到上方的视窗
[ctrl]+w+q关闭当前游标所在的视窗

i、vim特有功能:补齐

 

按键说明
[ctrl]+x -> [ctrl]+n依据目前正在编辑的文件内容作为关键字,予以补齐(语法依据副档名)
[ctrl]+x -> [ctrl]+f依据当前目录下的文件名,予以补齐
[ctrl]+x -> [ctrl]+o以副档名作为语法关键字,予以补齐

j、vim 特有功能:环境设定参数

按键说明
:set nu设定行号
:set nonu取消行号
:set hlsearch搜索到的关键字反白显示 (默认)
:set nohlsearch搜索到的关键字取消反白显示
:set autoindent自动缩排 (默认)
:set noautoindent不自动缩排
:set backup自动存储备份档(备份档名为 filename~)
:set ruler显示右下角状态说明
:set showmode显示左下角状态说明(比如 INSERT)
:set backspace=(012)倒退键设置;2:可以删除任意值;0 或者 1,仅可删除刚刚输入的字符,无法删除原来就存在的字符
:set all显示所有环境参数设定值
:set显示与系统默认值不同的设定值
:syntax on开启语法着色
:syntax off关闭语法着色
:set bg=dark开启语法着色深色方案
:set bg=light开启语法着色浅色方案 (默认)


(4)vim 的保存文件、恢复与打开时的警告信息

 

三、vim编辑器的配置

(1)配置文件下载连接

 

致谢

1、《鸟哥的Linux私房菜》[第三版] 作者 鸟哥

2、vi编辑器(百度百科)

3、vi 与 vim 快捷按键说明大全

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

worthsen

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值