Linux学习之Vim/Vi使用
Vim/Vi简介
Vim/Vi工作模式
Vim/Vi基本使用
Vim/Vi应用技巧
Vim/Vi简介
Vim/Vi是一个功能强大的全屏幕文本编辑器,是Linux/UNIX上最常用的文本编辑器,它的作用是建立、编辑、显示文本文件。
Linux下的编辑器最常用的就是vim或者vi文本编辑。vi 和vim 编辑器的区别是vim是vi的改进版本,在vi 编辑器的基础上上扩展了很多实用的功能。?大多数的linux/unix 发行版本中都
使用 vim 代替了原来的 vi 文本编辑器。 如果是centos或者redhat系统,当系统安装完毕后,vi/vim 文本编辑器默认情况下就已经被安装了。如果是debian/ubuntu系统下,默认情况下
,vim编辑器是不会被安装的。你需要在ubuntu系统下手动安装vim编辑。
vi/vim文本编辑器是我们在linux系统下工作可以说是必须会使用的一个工具,因为linux系统的设计理念是一切皆文件,也就是说,你在linux里的任何操作都是对文件的操作,所以会经常去
操作文件,更改文件,保存文件,退出并保存文件。
Vim/Vi 没有菜单,只有命令。
Vim/Vi工作模式
命令模式:
进入:vi filename
退出::wq
插入模式:
i a o
注意:从插入模式变为命令模式,按ESC键
编辑模式:
:
命令以回车结束运行
注意:从编辑模式变为命令模式,按ESC键
Vim/Vi基本使用
插入命令
命令 作用
a在光标后附加文本
A在本行行末附加文本
i在光标前插入文本
I在本行开始插入文本
o在光标下插入新行
O在光标上插入新行
定位命令
命令 作用
h左移一个字符
j下移一行
k上移一行
l下移一个字符
$移到行尾
0移到行首
H移至屏幕上端
M移至屏幕中央
L移至屏幕下端
:set nu设置行号
:set nonu取消行号
gg到第一行
G到最后一行
nG 到第n行
:n到第n行
删除命令
命令作用
x删除光标所在处字符
nx删除光标所在处后n个字符
dd删除光标所在行
ndd删除光标往下n行
dG 删除光标所在行末尾的内容
D删除从光标所在处到行尾
:n1,n2d删除指定范围的行
复制和取消命令
命令作用
yy、Y复制当前行
nyy、nY复制当前行以下n行
dd剪切当前行
ndd剪切当前行以下n行
p、P粘贴在当前光标所在行下或行上
替换和取消命令
命令作用
r取代光标所在处字符
R从光标所在处开始替换字符,按Esc结束
u取消上一部操作
搜索和替换
命令 作用
/string 向前搜索指定字符串 开启搜索时忽略大小写 :set ic 关闭搜索时忽略大小写 :set noic
n 搜索指定字符串的下一个出现位置
:%s/old/new/g 全文替换指定字符串
:n1,n2s/old/new/g 在一定范围内替换指定字符串,后面g意思是在替换时是否确认,c为没有提示
r 取代光标所在处字符
R 从光标所在处开始替换字符,按Esc结束
u 取消上一部操作
保存和退出命令
命令作用
:w保存修改
:w new_filename另存为指定文件
:wq保存修改并退出
ZZ快捷键,保存修改并退出
:q!不保存修改退出
:wq!保存修改并退出(文件所有者可忽略文件的只读属性)
注意:对文件可以强行保存退出的只可能是文件所有者或者是root用户
Vim/Vi应用技巧
导入文件:r 文件名
在Vi中执行命令:!命令
在Vi中导入执行命令的结果r !命令
定义快捷键:map 快捷键 触发命令
连续行注释
替换
自定义vi使用方式
导入文件:r 文件名
可以将其他文件的内容导入到这个编辑的文件中。
在Vi中执行命令:!命令
在Vi中导入执行命令的结果r !命令
按一次回车回到编辑文件的界面内
定义快捷键:map 快捷键 触发命令
范例:
:map ^P I#
#这个快捷键的作用,按ctrl+p后光标跳到在本行开始位置,写入#,用来加注释。
:map ^B 0x
#这个快捷键的作用是光标移到行首,删除光标所在处的字符,用来删除注释。
unmap ^p 取消快捷键
连续行注释
:n1,n2s/^/#/g
:n1,n2s/#//g
:n1,n2s/^/\/\//g
替换
很容易理解,输入一个字符或者字符串,变成另一个字符串。
定义替换:ab sammail sam@
取消ab替换的定义:unab sammail
自定义vi使用方式
每一个用户都可以定义自己的vi使用方式,配置文件在每个用户的宿主目录下的/.vimrc。
root /root
user /home