Toggle navigation
首页
产品中心
全新RDIF.vNext低代码框架
镇店
.NET C/S开发框架
.NET Web敏捷开发框架
.NET 快速开发框架(全新EasyUI版本)
.NET 代码生成器
.NET WebAPI服务端开发框架
客户案例
付款方式
国思学堂
技术文章
新闻资讯
下载
关于
首页
技术文章
挨踢业界
正文
原创
2018-07-13
浏览 (
7660
)
Linux系统vi(vim)编辑器命令使用教程简单介绍
vi(vim)是上Linux非常常用的代码编辑器,很多Linux发行版都默认安装了vi(vim)。vi(vim)命令繁多但是如果使用灵活之后将会大大提高效率。vi是“visual interface”的缩写,vim是vi IMproved(增强版的vi)。在一般的系统管理维护中vi就够用,如果想使用代码加亮的话可以使用vim ![file](http://doc.rdiframework.net/blog/article/20180713104425086.png-pw) 基本上vi可以分为三种状态,分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下: 1) 命令模式(command mode) 控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入插入模式、底行模式下。 2) 插入模式(Insert mode) 只有在插入模式下,才可以做文字输入,按ESC键可回到命令模式。 3) 底行模式(last line mode) 将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号。 不过一般我们在使用时把vi简化成两个模式,就是将底行模式也算入命令模式。 ### 一、打开文件、保存、关闭文件(vi命令模式下使用) vi filename //打开filename文件 :w //保存文件 :w yusi123.com //保存至yusi123.com文件 :q //退出编辑器,如果文件已修改请使用下面的命令 :q! //退出编辑器,且不保存 :wq //退出编辑器,且保存文件 ### 二、插入文本或行(vi命令模式下使用,执行下面命令后将进入插入模式,按ESC键可退出插入模式) a //在当前光标位置的右边添加文本 i //在当前光标位置的左边添加文本 A //在当前行的末尾位置添加文本 I //在当前行的开始处添加文本(非空字符的行首) O //在当前行的上面新建一行 o //在当前行的下面新建一行 R //替换(覆盖)当前光标位置及后面的若干文本 J //合并光标所在行及下一行为一行(依然在命令模式) ### 三、移动光标(vi命令模式下使用) vi可以直接用键盘上的光标来上下左右移动,但正规的vi是用小写英文字母 h 、 j 、 k 、 l ,分别控制光标左、下、上、右移一格。 按 Ctrl+b :屏幕往后移动一页。 按 Ctrl+f :屏幕往前移动一页。 按 Ctrl+u :屏幕往后移动半页。 按 Ctrl+d :屏幕往前移动半页。 按数字 0 :移到当前行的开头。 按 G :移动到文章的最后。 按 $ :移动到光标所在行的行尾。 按 ^ :移动到光标所在行的行首。 按 w :光标跳到下个字的开头。 按 e :光标跳到下个字的字尾。 按 b :光标回到上个字的开头。 按 #l :光标往后移的第#个位置,如:5l,56l . ### 四、删除、恢复字符或行(vi命令模式下使用) x :每按一次,删除光标所在位置的后面一个字符。 #x :删除光标所在位置的后面#个字符,例如, 6x 表示删除光标所在位置的后面6个字符。 X :每按一次,删除光标所在位置的前面一个字符。 #X :删除光标所在位置的前面#个字符,例如, 20X 表示删除光标所在位置的前面20个字符。 dd :删除光标所在行。 #dd :从光标所在行开始删除#行。 ### 五、搜索(vi命令模式下使用) /yusi123 //向光标下搜索yusi123字符串 ?yusi123 //向光标上搜索yusi123字符串 n //向下搜索前一个搜素动作 N //向上搜索前一个搜索动作 ### 六、跳至指定行(vi命令模式下使用) n+ //向下跳n行 n- //向上跳n行 nG //跳到行号为n的行 G //跳至文件的底部 ### 七、设置行号(vi命令模式下使用) :set nu //显示行号 :set nonu //取消显示行号 ### 八、复制、粘贴(vi命令模式下使用) yy //将当前行复制到缓存区,也可以用 “ayy 复制,”a 为缓冲区,a也可以替换为a到z的任意字母,可以完成多个复制任务。 nyy //将当前行向下n行复制到缓冲区,也可以用 “anyy 复制,”a 为缓冲区,a也可以替换为a到z的任意字母,可以完成多个复制任务。 yw //复制从光标开始到词尾的字符。 nyw //复制从光标开始的n个单词。 y^ //复制从光标到行首的内容。 y$ //复制从光标到行尾的内容。 p //粘贴剪切板里的内容在光标后,如果使用了前面的自定义缓冲区,建议使用”ap 进行粘贴。 P //粘贴剪切板里的内容在光标前,如果使用了前面的自定义缓冲区,建议使用”aP 进行粘贴。 ### 九、替换(vi命令模式下使用) :s/old/new //用new替换行中首次出现的old :s/old/new/g //用new替换行中所有的old :n,m s/old/new/g //用new替换从n到m行里所有的old :%s/old/new/g //用new替换当前文件里所有的old ### 十、编辑其他文件 :e otherfilename //编辑文件名为otherfilename的文件。 ### 十一、修改文件格式 :set fileformat=unix //将文件修改为unix格式,如win下面的文本文件在linux下会出现^M。 注意:如果不知道自己处在什么模式时可以按2次Esc键即可回到命令模式,会有最后提醒一点:注意大小写!!!
正文到此结束
本文标签:
挨踢业界
常用工具
版权声明:
本站原创文章,由
guosisoft.com
发布,遵循
CC 4.0 by-sa
版权协议,转载请附上原文出处链接和本声明。
上一篇
团队项目开发"编码规范"系列文章
下一篇
[推荐]ORACLE SQL:经典查询练手第三篇(不懂装懂,永世饭桶!)
热门推荐
{{article.title}}
热门指数:
浏览({{article.lookCount + 5000}})
相关文章
{{article.title}}
该篇文章的评论功能暂时被站长关闭
说给你听
本文目录
文章标签
RDIF.NET
其他
微信开发
.NET
消息交互
.NetCore
项目管理
常用工具
工作流
Web前端
数据库
挨踢业界
随机文章
RDIFramework.NET ━ .NET敏捷开发框架V3.5版本全新发布 100%源码授权
mysql导入大量数据时报MySQL server has gone away错误的解决办法
VS依赖注入(DI)构造函数自动生成局部私有变量
信息系统项目管理系列之五:项目整体管理
微信公众号开发C#系列-4、获取接口调用凭证
[推荐]ORACLE SQL:经典查询练手第一篇(不懂装懂,永世饭桶!)
RDIFramework.NET ━ .NET快速信息化系统开发框架 V3.2->用户管理模块新增“重置用户密码”功能
Mustache模板技术
.NET Core部署到linux(CentOS)最全解决方案,进阶篇(Supervisor+Nginx)
RDIFramework.NET V3.3 Web版新增日程管理功能模块
团队项目开发"编码规范"之七:控件命名规则
团队项目开发“编码规范”之九:代码分析
微信公众号开发C#系列-12、微信前端开发利器:WeUI
Quartz.Net实现作业定时调度详解
RDIFramework.NET框架基于Quartz.Net实现任务调度详解及效果展示
.NET快速信息化系统开发框架 V3.2->Web版本“产品管理”事例编辑界面新增KindEditor复文本编辑控件
RDIFramework.NET—.NET快速开发整合框架【开发实例】之产品管理(MVC版)
微信公众号开发系列-13、RDIFramework框架整合微信开发应用效果展示
Linux(CentOS7)安装与卸载MySQL8.0图文详解
RDIFramework.NET开发框架在线表单设计助力可视化快速开发
网站信息
文章总数:599 篇
标签总数:8 个
分类总数:8 个
留言数量:1385 条
在线人数:
89
人
运行天数:1321天
最后更新:2023-05-18
QQ:406590790
13005007127