Vi与Vim

Vi、Vim的命令及使用

Vi、Vim基本命令

Vi文文本编辑器,是Visual interface的简称。(无敌编辑器)
Vim它是Vi的增强版,即Vi Improved。(vim需要安装)
Vi有四种模式:

  • 工作模式,可查看文件信息
  • 命令模式,控制光标移动,可对文本进行复制、粘贴、删除和查找等
  • 输入模式,正常的文本录入
  • 末行模式,保存或退出文档

Vim拥有5种编辑模式:命令模式、输入模式、末行模式、可视化 模式、查询模式。

  • 命令模式(其它模式→ESC)
  • 输入模式(命令模式→a、i、o、A、I、O)
  • 末行模式(命令模式→:)
  • 可视化模式(命令模式→v)
  • 查询模式(命令模式→?、/)

命令、输入模式常用命令

操作类型命令作用
光标移动h、j、k、l左、下、上、右
⬅、⬇、⬆、➡左、下、上、右
删除dd删除(剪切)光标所在整行
#dd删除(剪切)从光标处开始的#行
d^删除当前光标之前本行所有字符
d$删除当前光标之后本行所有字符
删除列若想删除一列,可以在命令模式下按ctrl + v,然后使用光标整列选取删除
复制yy复制光标所在整行
#yy复制从光标处开始的#行
粘贴p剪切(dd)或复制(yy)过的数据粘贴到光标后面
P剪切(dd)或复制(yy)过的数据粘贴到光标前面
搜索/word从上而下在文中查找字符串“word”
word从下而上在文中查找字符串“word”
n显示搜索命令定位到的下一个字符串
N显示搜索命令定位到的上一个字符串
撤销操作u撤销上一步的操作
ctrl + r撤销撤销操作
翻页ctrl+f 或 Page Down文件向下翻一屏
ctrl+b 或 Page Up文件向上翻一屏
进入编辑模式a在当前字符后添加文本
i在当前字符前添加文本
o在当前后面插入一空行
行间跳转shift + ^行首
shirf + $行尾
1G或gg文件首部
shift + G文件尾部
#G跳转至文件第#行

末行模式常用命令

操作类型命令作用
保存文件:w保存
:w /root/newfile保存文件至/root/newfile
退出vi:q退出
:q!强制退出
保存退出vi:wq或:x保存退出
:wq!或:x!强制保存退出
行号:set nu显示行号
:set nonu不显示行号
大小写:set ic区分显示字符大小写
:set noic忽略字符大小写
缩进:set ai设定自动缩进
:set noai取消自动缩进
替换: s/old/new当前光标所在行的第一个old替换成new
: s/old/new/g当前光标所在行的所有old替换成new
:%s/old/new/g将全文中的所有old替换成new
:%s/old/new/gi将全文中的所有old替换成new并忽略大小写(参数i)
:#,#s/old/new/g将全文中的所有old替换成new
:%s/old/new/gc将全文中的所有old替换成new,在替换命令末尾加c命令,将对每个替换动作进行确认
搜索?word在文本中从下至上搜索“word”字符串
/word在文本中从上至下搜索“word”字符串
:set hlsearch高亮显示查找到的文本
:set nohlsearch取消高亮显示
其他操作:e /…/…打开新文件进行编辑
:r /…/…在当前文件中读入其他文件内容
:ADDR1,ADDR2w /…/…将当前文件中部分内容另存为另外一个文件 末行模式下使用w命令
:! COMMAND跟SHELL交互

使用vim编辑多个文件
vim FILE1 FILE2 FILE3
:next 切换至下一个文件
:prev 切换至前一个文件
:last 切换至最后一个文件
:first 切换至第一个文件
:qa 全部退出

分屏显示一个文件
Ctrl+w, s: 水平拆分窗口
Ctrl+w, v: 垂直拆分窗口
Ctrl+w, ARROW(表示上下左右箭头):在窗口间切换光标
:qa 关闭所有窗口

分窗口编辑多个文件
vim -o : 水平分割显示
vim -O : 垂直分割显示

配置文件
/etc/vimrc
~/.vimrc

set hlsearch " //高亮度反白 
set backspace=2 " //可随时用退格键删除 
set autoindent " //自动缩排 
set tabstop=4 " //缩进 
set softtabstop=4 
softtabstop // 是“逢4空格进1制表符”,前提是tabstop=4 
set shiftwidth=4 // 自动缩进空格长度 
set mouse=a " // 使用鼠标 
set selection=exclusive 
set selectmode=mouse,key 
set ruler " //可显示最后一行的状态 
set showmode " //左下角那一行的状态 
set nu " //可以在每一行的最前面显示行号啦! 
set bg=dark " //显示不同的底色色调 
syntax on " //进行语法检验,颜色显示

下图为Vim的键盘快捷键
Vim快捷键

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值