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 文件名

可以将其他文件的内容导入到这个编辑的文件中。

Linux学习之Vim/Vi使用(十三)_搜索




Linux学习之Vim/Vi使用(十三)_文本编辑器_02



在Vi中执行命令:!命令

在Vi中导入执行命令的结果r !命令

Linux学习之Vim/Vi使用(十三)_文本编辑器_03


Linux学习之Vim/Vi使用(十三)_字符串_04


按一次回车回到编辑文件的界面内

Linux学习之Vim/Vi使用(十三)_字符串_05



Linux学习之Vim/Vi使用(十三)_vim_06




定义快捷键:map 快捷键 触发命令


范例:
:map ^P I#<ESC>
#这个快捷键的作用,按ctrl+p后光标跳到在本行开始位置,写入#,用来加注释。
:map ^B 0x
#这个快捷键的作用是光标移到行首,删除光标所在处的字符,用来删除注释。
unmap ^p 取消快捷键




连续行注释


:n1,n2s/^/#/g :n1,n2s/#//g :n1,n2s/^/\/\//g




替换

很容易理解,输入一个字符或者字符串,变成另一个字符串。


定义替换:ab sammail sam@www.com 取消ab替换的定义:unab sammail




自定义vi使用方式

每一个用户都可以定义自己的vi使用方式,配置文件在每个用户的宿主目录下的/.vimrc。


root  /root user  /home