架构师养成记--26.vi/vim相关操作
vi/vim
命令模式
插入模式 aio
编辑模式 :
aio就是vi/vim的插入模式
命令 作用
a 在光标后附加文本
A 在本行末附加文本
i 在光标钱插入文本
I 在本行开始插入文本
o 在光标下插入行
O 在光标上插入行
定位命令
set number 设置行号(set nu)
set nonu 取消行号
如果想选择跳转到指定行。直接进入编辑模式,输入行号即可
命令 作用
h、方向左键 移动一个字符
j、方向下键 下移一行
k、方向上键 上移一行
l、方向右键 右移一个字符
$ 移至行尾
0 移至行尾
H 移至屏幕上端
M 移至屏幕中央
L 移至屏幕下端
命令模式的删除、复制、粘贴命令
命令 作用
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
n 搜索指定字符串下一个出现的位置
:%s/old/new/g 全文替换指定字符串
:n1,n2s/old/new/g 在指定范围替换指定字符串
在编辑模式下 ZZ也可退出
架构师养成记--26.vi/vim相关操作的更多相关文章
- 架构师养成记--25.linux用户管理
用户管理配置文件用户信息文件:/etc/passwd密码文件:/etc/shadow用户配置文件:/etc/login.defs /etc/default/useradd新用户信息文件:/etc/sk ...
- 架构师养成记--18.NIO
有人叫new IO 我这里就叫Non-block IO 经典概念: Buffer(缓冲区):之前直接通过流,现在提供一个buffer存放数据. Channel:管道,包括ServerSocketCha ...
- 架构师养成记--32.Redis高级(安全 主从复制)
Redis高级命令及特性 keys * 返回满足的所有键值(*表示模糊匹配) exists 是否存在指定的key(返回1表示存在,0表示不存在) expire 设置某个key的过期时间,使用ttl查看 ...
- 架构师养成记--9.future模式讲解
什么是future模式呢?解释这个概念之前我们先来了解一个场景吧,财务系统的结账功能,这个功能可能是每个月用一次,在这一个月中相关的数据量已经积累得非常大,这一个功能需要调用好几个存储过程来完成.假如 ...
- 架构师养成记--37.简单shell编程
一.HelloWord.sh echo 表示打印,可以在sh文件中写诸如pwd.ls 这样的命令,使用命令的时候尽量使用全路径. #!/bin/sh #this is my first sh echo ...
- 架构师养成记--35.redis集群搭建
前记:redis哨兵经验之谈.哨兵做主从切换可能要花费一两秒,这一两秒可能会丢失很多数据.解决方法之一是在java代码中做控制,try catch 到 链接断开的异常就sleep 一两秒钟再conti ...
- 架构师养成记--33.Redis哨兵、redis简单事务
Redis哨兵 有了主从复制,如果我想想对主从服务器进行监控,在redis2.6后提供了哨兵机制,2.6有哨兵1.0版本,并不稳定.2.8以后的哨兵功能才稳定起来. 顾名思义,哨兵就是监控Redis系 ...
- 架构师养成记--31.Redis的几种类型
String类型 Redis一共分为五种基本数据类型:String.Hash.List.Set.ZSet String类型是包含很多张类型的特殊类型,并且是二进制安全的.比如对序列化的对象进行存储,比 ...
- 架构师养成记--15.Disruptor并发框架
一.概述 disruptor对于处理并发任务很擅长,曾有人测过,一个线程里1s内可以处理六百万个订单,性能相当感人. 这个框架的结构大概是:数据生产端 --> 缓存 --> 消费端 缓存中 ...
随机推荐
- Js And PHP Modify Cookie
简单的js函数封装cookie //设置cookie function setCookie(cname, cvalue, exdays) { var d = new Date(); d.setTime ...
- MFC The Screen Flickers When The Image Zoomed
问题描述 当初写MFC也是不情愿的. 既然写了,遇到一些问题. 解决也废了一切功夫.所以简单的记录一下. 这个问题,也就是使用MFC显示图像的时候, 放缩图像的过程中, 图像会一闪一闪的. 这个问题的 ...
- Luogu 4433 [COCI2009-2010#1] ALADIN
LOJ 2958 线段树 + 类欧 主要矛盾就是$\sum\limits_{i = l}^{r}Ai \mod B$怎么做. 拆成前缀和相减的形式,有 $$\sum_{i = 0}^{r}(Ai \m ...
- python高性能编程方法一-乾颐堂
阅读 Zen of Python,在Python解析器中输入 import this. 一个犀利的Python新手可能会注意到"解析"一词, 认为Python不过是另一门脚本语言. ...
- qt QTcpServer与QTcpSocket通讯
分类: C/C++ TCP TCP是一个基于流的协议.对于应用程序,数据表现为一个长长的流,而不是一个大大的平面文件.基于TCP的高层协议通常是基于行的或者基于块的. ...
- 分布式理论系列(二)一致性算法:2PC 到 3PC 到 Paxos 到 Raft 到 Zab
分布式理论系列(二)一致性算法:2PC 到 3PC 到 Paxos 到 Raft 到 Zab 本文介绍一致性算法: 2PC 到 3PC 到 Paxos 到 Raft 到 Zab 两类一致性算法(操作原 ...
- Android targetSdkVersion 原理
前几天 Google 官方发布文章解析 compileSdkVersion.minSdkVersion 以及 targetSdkVersion 的含义,以及合理设置各个值的意义,原文 Picking ...
- spark yarn 集群提交kafka代码
配置好hadoop的环境,具体根据http://blog.csdn.net/u010638969/article/details/51283216博客所写的进行配置. 运行start-dfs.sh启动 ...
- [转]简介Gulp, Grunt, Bower, 和 Npm 对Visual Studio的支持
本文转自:http://www.cnblogs.com/whitewolf/p/4009199.html [原文发表地址]Introducing Gulp, Grunt, Bower, and npm ...
- android虚拟机的垃圾收集
Dalvik :http://zh.wikipedia.org/wiki/Dalvik%E8%99%9A%E6%8B%9F%E6%9C%BA ART :http://source.android.co ...