下面的命令在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使用高级的更多相关文章

  1. vi/vim高级命令集粹

    vi/vim高级命令集粹 (ctrl +v过来 留着以后看) 1.交换两个字符位置 xp 2.上下两行调换 ddp 3.把文件内容反转 :g/^/m0/ (未通过) 4.上下两行合并 J 5.删除所有 ...

  2. ubuntu vi/vim编辑器必知必会

    转载出处:http://blog.csdn.net/xiajun07061225/article/details/7039413 一.我们为什么要学习vim编辑器? Linux的命令行界面下面有非常多 ...

  3. Linux vi入门必备

    一.vi.vim介绍   文本编辑器分为: (1)基于图形界面,如gedit.geany等: (2)基于命令行,如nano.vi.joe等: 每个命令行界面的文本编辑器都有各自不同的快捷键,比如nan ...

  4. 【Linux高频命令专题(19)】vi/vim

    概述 其实在Linux中一切命令或者软件都是文件,所以把vi/vim作为高频命令专题之一,也没什么不妥.虽然大家都称之为编辑器~~ vim是vi的高级版本,比如有代码高亮,也就是说可以把vim定位为程 ...

  5. VI编辑器的使用方法

    一.vi的工作模式vi有两种工作模式:  编辑模式:用来输入和编辑文件的模式,屏幕上会显示用户的键入,按键不是被解释为命令执行,而是作为文本写到用户的文件中.  指令模式:用来编辑.存盘和退出文件的模 ...

  6. linux终端文本编辑神器vi的使用

    vi —— 终端中的编辑器 目标 vi 简介 打开和新建文件 三种工作模式 常用命令 分屏命令 常用命令速查图 01. vi 简介 1.1 学习 vi 的目的 在工作中,要对 服务器 上的文件进行 简 ...

  7. vi编辑器使用记录

    01. vi 简介 1.1 学习 vi 的目的 在工作中,要对 服务器 上的文件进行 简单 的修改,可以使用 ssh 远程登录到服务器上,并且使用 vi 进行快速的编辑即可 常见需要修改的文件包括: ...

  8. 利用vi编辑器创建和编辑正文文件(二)

    末行模式下的命令 1.       w:写文件,将编辑的内容保存到文件系统. 2.       w!:如果只读文件,强制写入系统. 3.       q!:退出vi,但文件内容修改的话,系统要提示是否 ...

  9. 【Linux入门学习之】vi/vim编辑器必知必会

    vi 在当前打开的文件内容中翻页:PageUp.PageDown 一.我们为什么要学习vim编辑器? Linux的命令行界面下面有非常多的文本编辑器.比如经常听说的就有Emacs.pico.nano. ...

随机推荐

  1. 科技股晴间多云 阿里京东IPO或受影响

    微博的时间长达一个月的时间才上市.科技股一直笼罩. Facebook一个月股价下跌21.55%:特斯拉跌幅21.69%:亚马逊的股价相比,1一个月27日高点下跌22.13%. 以前的明星股票都已进入华 ...

  2. OpenCV——Delaunay三角 [转载]

    从这个博客转载 http://blog.csdn.net/raby_gyl/article/details/17409717 请其它同学转载时注明原始文章的出处! Delaunay三角剖分是1934年 ...

  3. C# 读取IE缓存文件(1)

    using System; using System.Runtime.InteropServices; namespace Common { public class IECache { [DllIm ...

  4. 具体的例子来教你怎么做LoadRunner结果分析

    LoadRunner 解的地方--測试结果的分析.其余的录制和加压測试等设置对于我们来讲通过几次操作就能够轻松掌握了.针对 Results Analysis 我用图片加文字做了一个样例,希望通过样例能 ...

  5. android Intent.createChooser 应用选择

    在微博案例: 1.public void onClickShare(View view) { 2. 3. Intent intent=new Intent(Intent.ACTION_SEND); 4 ...

  6. spring多数据源的配置(转)

    C3P0和DBCP的区别 C3P0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展.目前使用它的开源项目有Hibernate,Spring等.   d ...

  7. 不同版本的SQL Server之间数据导出导入的方法及性能比较

    原文:不同版本的SQL Server之间数据导出导入的方法及性能比较 工作中有段时间常常涉及到不同版本的数据库间导出导入数据的问题,索性整理一下,并简单比较下性能,有所遗漏的方法也欢迎讨论.补充. 0 ...

  8. python带cookie提交表单自动登录(转)

    今天突然把博客给申请了,以前也想过的,奈于自己觉得水平还太低有点不好意思写博客,但是后来一想,自己的记录所学,加深印象,主要还是为了学习进步,不怕丢人!今天就稍微回顾一下这两天写的一段用python模 ...

  9. c#左右socket连接超时控制方案

    之前有一个项目中使用Remoting技术.当远程地址无效或server不执行,访问远程对象的方法,它会经过几十秒的时间来抛出异常秒. 由于我使用tcp状态.因此,认为可以使用socket为了测试连接, ...

  10. Centos使用dd命令制作U盘启动盘 wodim刻录光盘

    首先格式化U盘:使用fdisk -l 查看U盘到挂载点,如我的为/dev/sdb1.卸载U盘,运行格式化命令:mkfs.vfat  /dev/sdb1 然后又一次挂载U盘,開始制作启动盘: # dd ...