vi使用高级
下面的命令在vi命令模式被激活
h 光标左移一个字符
l 光标向右移动一个字符
j 光标下移一行
k 移动光标线
一.对整行操作
1.复制光标所在行 yy
2.删除光标所在行 dd
3.选中光标所在行 shift + v
结合j k选取多行
4.复制选中内容 y
5.粘贴选中内容 p(向光标所在行的下一行粘贴)
shift + p(向光标所在行的上一行粘贴)
数字 + p 指定粘贴次数
6.剪切选中内容 x
可当退格键使用。删除光标处字符
7.撤销上次操作 u
恢复上次操作 ctrl + r
作业:大家自己写一个hello.c的程序
hello.c
#include <stdio.h>
int main()
{
printf("hello world\n");
return 0;
}
要求:1、选中printf所在函数。利用shift + p 命令,连续复制十行。
3、在第8行的时候,利用x命令把hello给去掉,
4、在第10行的时候,利用x命令删除world,利用ctrl + r,恢复,可是仅仅恢复worl。
5、执行程序观察信息打印。
执行程序的过程:gcc hello.o---->默认会生成一个a.out可执行文件
./a.out---->观察结果。
二.对单词操作
8.选取几个字符 v 结合h l选择
9.粘贴选中内容 p(向光标所在行的下一字符開始粘贴)
shift + p(向光标所在行的上一字符開始粘贴)
ctrl + v 结合h j k l可选择一整块
10.替换单个字符 r+要替换字符
11.替换多个字符 R+要替换字符 Esc结束替换
12.查找字符串
/向下查找字符串
?向上查找字符串
*查找当前光标处单词
n下一个匹配的字符串
N上一个匹配的字符串
取消高亮 :nohls
13.替换字符串
:m,n s/oldstring/newstring/g
:.,$ s/oldstring/newstring/g
:%s/oldstring/newstring/g
m,n 指定替换从m行到n行
. 表示光标当前行
$ 表示文件最后
g 替换全部找到字符串,若无g则仅仅替换每行找到的第一个字符串
% 表示全部的行
14.定位到某行
:行号
行号G
terminal 快捷键
15.另开一个终端 ctrl + shift + n
16.当前终端再开一个tab ctrl + shift + t
版权声明:本文博主原创文章,博客,未经同意不得转载。
vi使用高级的更多相关文章
- vi/vim高级命令集粹
vi/vim高级命令集粹 (ctrl +v过来 留着以后看) 1.交换两个字符位置 xp 2.上下两行调换 ddp 3.把文件内容反转 :g/^/m0/ (未通过) 4.上下两行合并 J 5.删除所有 ...
- ubuntu vi/vim编辑器必知必会
转载出处:http://blog.csdn.net/xiajun07061225/article/details/7039413 一.我们为什么要学习vim编辑器? Linux的命令行界面下面有非常多 ...
- Linux vi入门必备
一.vi.vim介绍 文本编辑器分为: (1)基于图形界面,如gedit.geany等: (2)基于命令行,如nano.vi.joe等: 每个命令行界面的文本编辑器都有各自不同的快捷键,比如nan ...
- 【Linux高频命令专题(19)】vi/vim
概述 其实在Linux中一切命令或者软件都是文件,所以把vi/vim作为高频命令专题之一,也没什么不妥.虽然大家都称之为编辑器~~ vim是vi的高级版本,比如有代码高亮,也就是说可以把vim定位为程 ...
- VI编辑器的使用方法
一.vi的工作模式vi有两种工作模式: 编辑模式:用来输入和编辑文件的模式,屏幕上会显示用户的键入,按键不是被解释为命令执行,而是作为文本写到用户的文件中. 指令模式:用来编辑.存盘和退出文件的模 ...
- linux终端文本编辑神器vi的使用
vi —— 终端中的编辑器 目标 vi 简介 打开和新建文件 三种工作模式 常用命令 分屏命令 常用命令速查图 01. vi 简介 1.1 学习 vi 的目的 在工作中,要对 服务器 上的文件进行 简 ...
- vi编辑器使用记录
01. vi 简介 1.1 学习 vi 的目的 在工作中,要对 服务器 上的文件进行 简单 的修改,可以使用 ssh 远程登录到服务器上,并且使用 vi 进行快速的编辑即可 常见需要修改的文件包括: ...
- 利用vi编辑器创建和编辑正文文件(二)
末行模式下的命令 1. w:写文件,将编辑的内容保存到文件系统. 2. w!:如果只读文件,强制写入系统. 3. q!:退出vi,但文件内容修改的话,系统要提示是否 ...
- 【Linux入门学习之】vi/vim编辑器必知必会
vi 在当前打开的文件内容中翻页:PageUp.PageDown 一.我们为什么要学习vim编辑器? Linux的命令行界面下面有非常多的文本编辑器.比如经常听说的就有Emacs.pico.nano. ...
随机推荐
- AsyncSocket长连接棒包装问题解决
project正在使用长连接快来server沟通.因此,指定我们的协议前两个字节为数据长度来区分数据包 app这边数据有两种传输形式: 1.app主动请求所须要的数据: 2.app异步接收来自服务端的 ...
- Android:创建耐磨应用 - 语音操作
加入语音处理能力(Adding Voice Capabilities) 语音操作为用户体验可穿戴的重要组成部分,它允许用户快速.免提方式来运行操作. Wear它提供了两种类型的语音操作的: 该系统提供 ...
- overflow的几个坑
在android 4.0的原生浏览器上注意: html元素上不要加overflow: auto;的样式,否则会造成有些元素无法点击 在absolute元素上 不要加 overflow: auto; 否 ...
- plsql dev中Dynamic Performance Tables not accessible分析解决(转)
使用plsql dev的朋友多遇到过类此如下面的提示: Dynamic Performance Tables not accessible, Automatic Statistics Disabled ...
- RH133读书笔记(10)-Lab 10 Exploring Virtualization
Lab 10 Exploring Virtualization Goal: To explore the Xen virtualization environment and the creation ...
- HDU 4917 Permutation
意甲冠军: 序列p1.p2.p3--pn由1.2.3--n这些数字 现在给出一些条件pi<pj 部条件的排列的个数 思路: 非常easy想到用一条有向的线连接全部的pi和pj 那么就构成了 ...
- Ignite China微软技术
首届Ignite China微软技术大会见闻 10.26-10.28,有幸参加微软在中国北京举办的首届Ignite China技术大会.世界那么大,技术那么多,我想去看看. 为期三天的技术大会在小 ...
- 使用更清晰DebugLog开发和调试工具
在开发和应用的开发和调试过程中难免会发现故障的过程中.我相信很多做iOS开发程序员Xcode的debug调试功能大加关注. 但在这样做Android开发过程中,却不那么方便,虽然IDE也提供了debu ...
- Python标准库简介
在<Python语言参考手册>描述中的描述Python语法和语义,而本手冊主要介绍了Python标准库的内容和使用,也介绍了一些发行库里可选的组件库. Python标准库包括的内容是非常广 ...
- hdu3836联通的强还原性点
Equivalent Sets Time Limit: 12000/4000 MS (Java/Others) Memory Limit: 104857/104857 K (Java/Other ...