vi常用快捷键



1)移动光标

h :光标左移一个字符
j :光标上移一个字符
k :光标下移一个字符
l :光标右移一个字符

0 :光标移至行首
$ :光标移至行尾

H :光标移至屏幕首行
M :光标移至屏幕中间
L :光标移至屏幕最末行

2)插入文本

i :在光标前插内内容
a :在光标后插入内容
o :在所在行的下一行插入新行
O :在所在行的上一行插入新行


3)删除文本
    
x:删除光标后面的字符
X:删除光标前面的字符
nx:删除光标后面n个字符
nX:删除光标前面的n个字符
d0:删除光标至行首的内容
d$:删除光标至行尾的内容
dd :删除整行
ndd :向下删除n行

4)复制文本

yy :复制整行
nyy :复制n行
p :在所在行下一行粘贴
P :在所在行上一行粘贴
dd :剪切

5)查找文本

/pattern :向下查找
?pattern :向上查找
n :顺序查找
N :反向查找
:s/p1/p2/g :在当前行,将p1替换成p2
:n1,n2s/p1/p2/g :将n1至n2行之间的p1替换成p2


6)屏幕翻滚

ctrl+u:向文件首翻半屏
ctrl+d:向文件尾翻半屏
ctrl+f:向文件尾翻一屏
ctrl+b:向文件首翻一屏

7)末行命令

:n1,n2 co n3  :将n1至n2行复制到n3行的下面
:n1,n2 m n3    :将n1至n2行剪切至n3行的下面
:n1,n2 d         :将n1至n2行删除

:w  保存
:q   退出
:x   保存并退出
:q!  强制退出
:w!  强制保存
:数字 定位到指定行
:set nu 显示行号
:set nonu 取消行号
u:取消上一次操作

转载于:https://www.cnblogs.com/Uncle-liu/p/7565204.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/268383.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

华为帐号忘记显示服务器繁忙,显示云服务器繁忙怎么操作

显示云服务器繁忙怎么操作 内容精选换一换在您申请了云耀云服务器后,可以通过管理控制台查看和管理您的云耀云服务器。本节介绍如何查看云耀云服务器的详细配置,包括云耀云服务器名称、镜像信息、系统盘、数据盘、安全组、弹性公网IP等信息。登录管理控制…

C#令人迷惑的DateTime:世界标准时间还是本地时间?

先来看一段代码: 复制内容到剪贴板程序代码DateTime time DateTime.Parse("2013-07-05 00:00:00");Console.WriteLine(time.ToUniversalTime()); //2013/7/4 16:00:00Console.WriteLine(time.ToLocalTime()); //2013/7/5 8:00:00这让人搞不清楚DateTime的…

集合删除元素技巧 removeIf

集合删除元素技巧 removeIf removeIf() 是从 JDK1.8 开始提供的。 之前我们删除 List 中的元素的话,一般使用循环遍历实现。今天发现 removeIf 很好用,记录一下。

话里话外:猎人讲小事——兔子、凤凰与猎狗

一只兔子在森林里迷了路,去请教一只凤凰,凤凰告诉他,一直向东方走就可以了,然后还送给了兔子一个指南针,并教会兔子如何使用。兔子生性胆小,又花了100元雇了个猎狗带路。一兔一狗拿着指南针,向东…

Android弹出Dialog使用举例

Android详细的对话框AlertDialog.Builder使用方法 7种形式的Android Dialog使用举例 第30章、常见对话框之一AlertDialog(从零开始学Android) 转载于:https://www.cnblogs.com/defineconst/p/7574458.html

LAMP搭建之三:php编译安装

1、下载php的稳定源代码包。我这里下载的是php-5.2.3。php官网从google一搜就找到了。2、解压tar jxvf php-5.2.3.tar.bz2 -C /usr/src/cd /usr/src/php-5.2.3/3、配置程序./configure --prefix/usr/local/php --with-apxs2/usr/local/apache2/bin/apxs --with-config-file-pat…

Mysql查看慢查询日志是否开启 show VARIABLES like ‘slow_query%‘;

慢查询日志 在讲读操作变慢的原因之前我们先来看看是如何定位慢 SQL 的。Mysql 中有一个叫作慢查询日志的东西,它是用来记录超过指定时间的 SQL 语句的。默认情况下是关闭的,通过手动配置才能开启慢查询日志进行定位。 具体的配置方式是这样的&#xf…

应用程序 /dev/rtc 编程 获取时间 2011-12-13 01:01:06【转】

本文转载自:http://blog.chinaunix.net/uid-16785183-id-3040310.html 分类: 原文地址:应用程序 /dev/rtc 编程 获取时间 作者:yuweixian4230 找的一些rtc资料:系统时钟硬件与LINUX时间表示二 之 Linux内核对RTC的编…

GIPS 详细介绍

转自:百度百科 Global IP Sound(GIPS)协议,著名的语音聊天工具skype所使用的协议   Global IP Solutions (GIPS) 的前身为Global IP Sound (GIPS),专为数据包网络的实时通信应用市场,开发行业领先的嵌入式媒体处理…

重置MYSQL密码后,Navicat连接报错:2003 - Can‘t connect to MySQL server on ‘127.0.0.1‘ (61 “Connection refused“)

重置MYSQL密码后,Navicat连接报错:2003 - Can‘t connect to MySQL server on ‘127.0.0.1‘ (61 “Connection refused“) 报错如下 解决方法:勾选使用套接字文件

一个小栗子聊聊JAVA泛型基础

背景 周五本该是愉快的,可是今天花了一个早上查问题,为什么要花一个早上?我把原因总结为两点: 日志信息严重丢失,茫茫代码毫无头绪。对泛型的认识不够,导致代码出现了BUG。第一个原因可以通过以后编码谨慎的…

《WCF技术内幕》翻译25:第2部分_第5章_消息:创建一个消息(下)之MessageFault

Message和SOAP Fault老徐备注1 Message类型定义了一些用来创建表示SOAP Fault消息对象的工厂方法。SOAP Fault是SOAP消息的一种形式,它用来表示错误信息。在SOAP规范(1.1 和1.2)对于消息体内容,并且某些时候,关于SOAP消…

mac解决mysql忘记密码的问题(亲测有效)

打开终端依次执行如下命令 # 第一步,进入mysql服务 sudo /usr/local/mysql/support-files/mysql.server stop# 第一步,进入mysql的bin目录 cd /usr/local/mysql/bin/# 第二步,使用root账户(这一步要输入mac密码) sudo…

UVA - 572 Oil Deposits

/*1. 图也有DFS遍历和BFS遍历,前者用递归实现,后者用队列实现。由于DFS更容易编写,一般用DFS求连通块。求多维数组连通块的过程也称为种子填充2. 一般要尽量避免同一个格子被访问了两次,但是在这道题中,即便访问两次&a…

程序员笑话几则

自行车一个程序员骑着一个很漂亮的自行车到了公司,另一个程序员看到了他,问到,“你是从哪搞到的这么漂亮的车的?”骑车的那个程序员说,“我刚从那边过来,有一个漂亮的姑娘骑着这个车过来,并停在…

ERROR 2002 (HY000): Can‘t connect to local MySQL server through socket ‘/tmp/mysql.sock‘

错误信息: ERROR 2002 (HY000): Cant connect to local MySQL server through socket /tmp/mysql.sock (2) 出现问题原因: 有可能是 my.cnf 配置文件中设置了 [mysqld] 的参数 socket ,而没有设置[client]的参数socket mysql.sock 文件有…

POJ2594 Treasure Exploration

Treasure ExplorationTime Limit: 6000MS Memory Limit: 65536KTotal Submissions: 8879 Accepted: 3635Description Have you ever read any book about treasure exploration? Have you ever see any film about treasure exploration? Have you ever explored treasure? …

samba and AD

背景:在上次的背景之下(见上一文章),管理员发现公司内现有部门不多,但员工数量非常的多.如果按照用户一个一个的去创建用户并用smbpasswd增加samba的登陆用户非常的麻烦.而且公司内已经存在一台windows 2003 server域控制器(建立方法),并且包含所有员工的帐号信息.在此管理员想…

jquery 简单分页插件jQuerypage

昨天项目手机端要用到table的分页&#xff0c;考虑到手机端界面小&#xff0c;系统数据不多&#xff0c;在没考虑大批量数据处理的前提前就下载了这个插件&#xff0c;简单。 展示数据datas为json格式。 <!DOCTYPE html> <html lang"ch"> <head>&l…

Google Closure Complier的使用

参考老赵的这篇 俺觉得GC最精华的还是它的高级压缩功能&#xff0c;只不过用起来用点麻烦: 最好的是不需要引用第三方类库, 如果需要用得加上编译参数也不需要提供给第三方不要将js写到html中html里面不要有静态函数调用, 比如οnclickXXX不使用[XXX]的形式访问属性,或者说使用…