vi和vim一直被人津津乐道,到底是什么使得它们如此受欢迎?

  vi分为3种模式:一般模式,编辑模式,命令行模式。

(1)一般模式:

  进入vi后,默认就是一般模式。

  用处:方便地移动光标,删除字符/整行,复制,粘贴。

  以下是些常用的命令:

方法 解释 例子
num + 方向键 重复方向键num次 20↑就是向上移动20次
num + 空格键    向右移动num个字符距离 10<space>就向右移动10位
0 或 home键 去到当前这行的最前面  
$ 或 end键 去到当前这行的最后面  
G 移到最后一行  
num + G 移到第num行 10G就表示移到第十行
gg 移到第一行  
num + enter 向下移动num行 10<enter>就向下移动10行
/word 向下找word这个字符串 /kaima表示向下找kaima这个字符串
?word 向上找word这个字符串 ?kaima表示向上找kaima这个字符串
:n1,n2s/word1/word2/g 在n1和n2行之间找出word1并替换为word2 ;10,20s/kaima/good/g 在第10到20行间找出kaima并替换为good
:1,$s/word1/word2/g 从第一行到最后一行找出word1并替换为word2 :1,$s/kaima/good/g
num + x 连续删除num个字符 10x表示连续删除10个字符
dd 删除当前整行  
yy 复制当前整行  
p, P p在下一行粘贴,P在上一行粘贴  
u 撤销上一个动作  
[Ctrl] + r 重复上一个动作

(二)编辑模式

用处:编辑内容。

i,I i从光标处插入,I从当前行第一个非空字符处插入
a,A a从光标的下一个字符处插入,A从当前行最后一个字符处插入
o,O o在当前行下插入新的一行,O在当前行上插入新的一行
r,R r只替换当前的字符,R一直替换光标所指的字符(ESC停止)

(三)命令行模式

用处:保存,离开,修改设置。

:w 保存文件
 :q 离开vi
 :wq 保存后离开

加上!有强制的意思,比如:w! 表示强制保存(即使文件为只读)。

  以上只是些常用的命令,满足日常的使用,但这并不全,http://www.cnblogs.com/88999660/articles/1581524.html这篇文章比较全面地列出了vi的命令,可以参考。

vi/vim初步接触的更多相关文章

  1. 为什么要使用puppet 及初步接触

    为什么要使用puppet 及初步接触   1.简介 云计算环境下,密度高,机器数量多,还要求弹性和伸缩性,这对于运维提出更高的要求.系统管理员需要经常安装操作系统,对系统参数进行配置和优化,对人员进行 ...

  2. vi 编辑器初步

    vi 编辑器初步 4,vi进入后是命令模式 ,可以用i o s 进入插入模式 i ,在当前字符位置插入,o为新开一行插入,s删除当前字符添加 5,r 为直接替换当前字符 6,到行头按0,$为到行尾到未 ...

  3. Linux vi/vim(转载)

    Linux vi/vim 所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在. 但是目前我们使用比较多的是 vim 编辑器. vim 具有程序编辑的能力,可以主 ...

  4. vi/vim 的使用

    vi/vim 的使用 基本上 vi/vim 共分为三种模式,分别是一般模式.编辑模式与指令列命令模式. 这三种模式的作用分别是: 一般模式:以 vi 打开一个档案就直接进入一般模式了(这是默认的模式) ...

  5. 解决vi/vim中粘贴会在行首多很多缩进和空格的问题

    解决vi/vim中粘贴会在行首多很多缩进和空格的问题 secureCRT会将你原来的文本原封不动的按照字符串的样式发送给服务器.所以当你的服务器上的vim设置为autoindent的话,在i模式下,那 ...

  6. Linux下Vi/Vim使用笔记

    启动和关闭vim vi 打开 Vi/Vim 打开 Vi/Vim 并加载文件 <file> vi <file> vim编辑器的三种模式:一般模式.编辑模式和命令行模式在一般模式中 ...

  7. vi/vim基本使用方法

    vi/vim 基本使用方法本文介绍了vi (vim)的基本使用方法,但对于普通用户来说基本上够了!i/vim的区别简单点来说,它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅兼容vi的所 ...

  8. Linux vi/vim

    所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在. 但是目前我们使用比较多的是 vim 编辑器. vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正 ...

  9. Linux上vi(vim)编辑器使用教程

    vi(vim)是上Linux非常常用的编辑器,很多Linux发行版都默认安装了vi(vim).vi(vim)命令繁多但是如果使用灵活之后将会大大提高效率.vi是“visual interface”的缩 ...

随机推荐

  1. DSP using MATLAB示例 Example3.5

    代码: n = [0:10]; x = (0.9*exp(j*pi/3)).^n; % x(n) = k = -200:200; w = (pi/100)*k; % [0,pi] axis divid ...

  2. js兼容方法:获取当前样式|计算后样式 getStyle

    function getStyle(obj,attr){ if(obj.currentStyle){ //for IE return obj.currentStyle[attr]; }else{ re ...

  3. Haskell 笔记 ②

    ①如何写一个求阶层函数? fac 0 =1 fac n=n*fac(n-1) 函数自适应匹配参数,可以把特判情况写在前面,注意按顺序匹配的,n这种万能情况写在最前面就完蛋了.同时你也注意到,函数只能一 ...

  4. cdoj 1334 郭大侠与Rabi-Ribi Label:贪心+数据结构

    郭大侠与Rabi-Ribi Time Limit: 3000/1000MS (Java/Others)     Memory Limit: 65535/65535KB (Java/Others) 最近 ...

  5. spring源码学习之路---IOC容器初始化要义之bean定义载入(五)

    作者:zuoxiaolong8810(左潇龙),转载请注明出处,特别说明:本博文来自博主原博客,为保证新博客中博文的完整性,特复制到此留存,如需转载请注明新博客地址即可. 最近工作很忙,时间不多,研究 ...

  6. Java_java动态编译整个项目,解决jar包找不到问题

    java动态编译整个项目,解决jar包找不到问题原文:http://itzyx.com/index.php/javac/ 动态将java文件编译为class文件解决方案:将temp\sdl\src目录 ...

  7. Linux_记录ping命令的日志包括时间戳

    while true; do ping -c 1 www.baidu.com | awk '{print "["strftime("%F %H:%M:%S")& ...

  8. python select

    server #!/usr/bin/env python3 # -*- coding: utf-8 -*- """ @author: zengchunyun " ...

  9. MongoDB介绍及安装

    一.介绍: 1.NoSql(非关系型的数据库)成了一个极其热门的新领域,非关系数据库产品的发展非常迅速.MongoDB是NoSql的其中一种较为热门的非关系型数据库.查阅很多资料.其他博客和网站,借着 ...

  10. (转)as3效率优化

    1.改进算法无论对于那一种程序,好的算法总是非常重要的,而且能够极大地提高程序性能,所以任何性能的优化第一步就是从算法或者说程序逻辑的优化开始,检查自己的程序是否有多余的运算,是否在没有必要的时候做了 ...