web安全day23:vim软件的最基本最常用操作
目录
vim基本用法
vim三种状态切换
命令模式
输入模式
末行模式
vim编辑器是vi编辑器的升级版。
如果我们希望在/tmp/目录中建立一个名为test.txt的文件并写入hello这几个字母,在上一节中,我们了解到使用echo命令去实现这样的需求
echo "hello" > test.txt
实际中,在linux中使用更多的是vim编辑器。
vim基本用法
编辑test.txt。
vim test.txt
按下键盘的”i”键,界面左下角显示insert,进入输入模式,表明可以输入。
输入完成后按esc键回到命令模式。
如果需要保存并退出,按“:”键,输入wq。
使用cat检查是否写入
:wq 保存退出 :q! 退出不保存 :set nu 显示行号 :set nonu //取消显示行号 :% s/l/x/g 把所有的l替换成x
以上是vim最基本最基本的操作了。如果只是需要对文件进行修改或者查看,掌握上面的内容就足够了,如果还希望掌握一些更进阶的内容,则可以接着往下看。
vim三种状态切换
vim 共分为三种模式,分别是
- 命令模式(Command mode)
- 输入模式(Insert mode)
- 末行模式(Last line mode)
它们的切换方式如下图
命令模式
用户刚刚启动 vi/vim,便进入了命令模式。
此状态下敲击键盘动作会被Vim识别为命令,而非输入字符。比如我们此时按下i,并不会输入一个字符,i被当作了一个命令。
以下是常用的几个命令:
i 切换到输入模式,以输入字符。 a //在当前光标位置的右边添加文本 i //在当前光标位置的左边添加文本 A //在当前行的末尾位置添加文本 I //在当前行的开始处添加文本(非空字符的行首) O //在当前行的上面新建一行 o //在当前行的下面新建一行 R //替换(覆盖)当前光标位置及后面的若干文本 J //合并光标所在行及下一行为一行(依然在命令模式) x 删除当前光标所在处的字符。 nx //删除从光标开始的n个字符 dd 删除当前行 ndd //向下删除当前行在内的n行 u //撤销上一步操作 U //撤销对当前行的所有操作 2yy 复制当前行以及下一行 10yy 复制当前行以及下十行 p 粘贴到当前行 gg 快速回到第一行 G 快速回到最后一行 :10,20d 删除第10行到第20行 50G 快速回到第50行 /vpser //向光标下搜索vpser字符串 ?vpser //向光标上搜索vpser字符串 n //向下搜索前一个搜素动作 N //向上搜索前一个搜索动作 n+ //向下跳n行 n- //向上跳n行 nG //跳到行号为n的行 G //跳至文件的底部
若想要编辑文本:启动Vim,进入了命令模式,按下i,切换到输入模式。输入“:” 切换到末行模式,以在最底一行输入命令。
输入模式
命令模式只有一些最基本的命令,因此仍要依靠末行模式输入更多命令。
字符按键以及Shift组合,输入字符ENTER,回车键,换行BACK SPACE,退格键,删除光标前一个字符DEL,删除键,删除光标后一个字符方向键,在文本中移动光标HOME/END,移动光标到行首/行尾Page Up/Page Down,上/下翻页Insert,切换光标为输入/替换模式,光标将变成竖线/下划线ESC,退出输入模式,切换到命令模式
末行模式
在命令模式下按下:(英文冒号)就进入了末行模式。
末行模式可以输入单个或多个字符的命令,可用的命令非常多。
在末行模式中,基本的命令有:
:q 退出程序 :w 保存文件 :wq 保存并退出 :q! 退出不保存 :w test.txt 保存至test.txt文件 :set fileformat=unix //将文件修改为unix格式
按ESC键可随时退出底线命令模式。
关于本文所用到的工具,欢迎关注我的公众号:旁骛OtherThing,回复工具获取。
web安全day23:vim软件的最基本最常用操作相关推荐
- Vim文本编辑器及文本处理常用操作
目录 vim编辑器介绍 vi编辑器 vim编辑器 基本模式 派生模式 其他 使用vim编辑器 vim编辑器命令格式 vim基础操作-打开文件 vim基础操作-移动光标 vim基础操作-数据操作 vim ...
- Vim使用小记(一)常用操作
By francis_hao Sep 22,2016 vim的功能自然不止如此,这里只是把日常使用频率较高的记录下来,若想了解vim的全部功能可查阅其帮助手册:help,或者查询指定命令的用法: ...
- 蓝桥杯软件类竞赛--Python的常用操作示例
算法教材:<算法竞赛入门到进阶> 清华大学出版社 网购:京东 当当 作者签名书(有发票):点我 有建议请加QQ 群:567554289 文章目录 1. for循环 2. sort()和 ...
- 微软办公软件Word,Excel,PPT一些常用操作
Word 去掉红线 工具->拼写和语法->隐藏拼写错误 去掉段落标记 视图->显示段落标记(取消勾选) Excel 将CSV文件中科学计数法在excel中正常显示 建议直接看这篇文章 ...
- 在WinForm中使用Web Service来实现软件自动升级
来源:互联网 winform程序相对web程序而言,功能更强大编程更方便,但软件更新却相当麻烦,要到客户端一台一台地升级,面对这个实际问题,在最近的一个小项目中,本人设计了一个通过软件实现自动升级技术 ...
- 承接WEB应用开发、软件开发、网站开发
DB80 .NET 软件实验室是由全国资深开发工程师组成的技术联盟,拥有多样的技术类型和强大的技术实力. A.我们的服务: 一.WEB应用开发.软件开发.网站开发: 此项业务主要服务于各大中小企业. ...
- web数据库管理和运维软件 - webcat
WebcatEE 是一个java版的 web 数据库管理和运维软件,支持多种数据库,包含了SQL审核,SQL执行,SQL查询,线上发布等功能. WebcatEE 同时支持 Redis, MongoDB ...
- 基于web的HMI / SCADA软件
一.项目简介 基于web的HMI / SCADA软件 二.实现功能 有GIS信息 支持视频流 支持工厂过程组态 支持配方系统组态 支持油和汽组态 支持交通系统组态 支持水系统组态 支持热力项目组态 支 ...
- 减少存储过程封装业务逻辑-web开发与传统软件开发的思维模式不同
转:减少存储过程封装业务逻辑-web开发与传统软件开发的思维模式不同 本篇文章讨论并不是:不要使用存储过程,因为有些事情还是要存储过程来完成,不可能不用.而是关于:"业务逻辑是不是要封装在存 ...
- 2021年中国基于Web的医疗计费软件市场趋势报告、技术动态创新及2027年市场预测
基于Web的医疗计费软件市场的企业竞争态势 该报告涉及的主要国际市场参与者有Cliniko.SimplePractice.NextGen Healthcare.MINDBODY.CounSol.com ...
最新文章
- POJ 3258:River Hopscotch (最大化最小值)
- 编写歌唱比赛评分_【活动】预告||“唱自己的歌”歌唱大赛来啦
- IDEA中如何彻底删除项目
- RabbitMQ 把一个queue从一个node转移到另外一个node.
- Android之给图片添加涂鸦(文字)
- linux系统硬盘使用过高,磁盘IO过高时的处理办法
- OpenCV equalizeHist直方图均衡化的实例(附完整代码)
- Spring AOP源码解析(一)——核心概念
- Laravel+passport 实现API认证
- 东北大学计算机技术考研大纲,东北大学考研大纲
- Linux运维新主机挂载硬盘,linux运维:Linux下添加新硬盘+分区及挂载详细步骤图解...
- python文本编码转换_python实现文件批量编码转换及注意事项
- Apache+php 在windows下的配置
- ZeroMQ(java)之负载均衡
- 基于H5的移动端APP开发框架
- 数据库系列(4):关系型数据库
- 听说今年金三银四变成金一银二了。
- sybase客户端SqlDbx中文乱码问题解决
- 一份完整的app产品运营推广方案,app推广运营的方法(二
- 被国人误解了千年的七句话
热门文章
- 【面经】来啦!百度凤巢算法面经
- 人民日报:研究生期间该懂的47件事,你认可吗?
- 评分9.7,边看边用!这本Python书终于玩大了!
- 65 年来,全英国向他道歉三次
- Python中的抽象
- 知识图谱研讨实录09丨肖仰华教授带你读懂知识图谱语言认知
- yum与apt-get的区别以及两者更新源(阿里/网易【163】)
- deebot扫地机器人使用_石头扫地机器人T7 Pro使用体验 避障更加“聪明”
- python有参装饰器详解_Python 带有参数的装饰器实例代码详解
- flink写入 mysql_基于 Binlog + Flink 实现多表数据同构/异构方案