vi中的撤销与重做 (2010-05-11 19:27:17)

在vi中按u可以撤销一次操作

u   撤销上一步的操作

Ctrl+r 恢复上一步被撤销的操作

注意:

如果你输入“u”两次,你的文本恢复原样,那应该是你的Vim被配置在Vi兼容模式了。

重做

如果你撤销得太多,你可以输入CTRL-R(redo)回退前一个命令。换句话说,它撤销一个撤销。要看执行的例子,输入CTRL-R两次。字符A和它后面的空格就出现了:

young intelligent turtle

有一个特殊版本的撤销命令:“U”(行撤销)。行撤销命令撤销所有在前一个编辑行

上的操作。 输入这些命令两次取消前一个“U”:

A very intelligent turtle

xxxx 删除very

A intelligent turtle

xxxxxx 删除turtle

A intelligent

用“U”恢复行

A very intelligent turtle

用“u”撤销“U”

A intelligent

“U”命令自己改变自己,“u”命令撤销操作,CTRL-R命令重做操作。这有点乱,但不用

担心,用“u”和CTRL-R命令你可以切换到任何状态。

流行的文本编辑器通常都有前进和后退功能,可以在文件中曾经浏览过的位置之间来回移动。在 vim 中使用 Ctrl-O 执行后退,使用 Ctrl-I 执行前进。

相关帮助:  :help CTRL-O  :help CTRL-I   :help jump-motions

好久没有用Linux了,身边又没有环境,烦请各位给看看,给个准确答案:

1   在   vim   中,遇到如下的编辑问题,应该怎么操作?

a)   撤消上一个编辑操作。

b)   重复上一个编辑操作。

c)   还原被撤消的编辑操作。

d)   多次重复一组编辑操作。

e)   把一段文字转换为全部大写。

2   下面的目录属性

drwxrwsr-x         7   dijk           team                   4096     4月     8   19:34   qingli

a)   这里的   s   属性有何作用?

b)   属性字段后的数字   7   表示什么?

3   liback.la     库文件的后缀.la是什么含义?

a)   撤消上一个编辑操作。       ====》   U

b)   重复上一个编辑操作。     =====>   .

c)   还原被撤消的编辑操作。   ======>   Ctrl   +   R

d)   多次重复一组编辑操作。

"."命令可以重复最近一次的编辑动作.   但是如果你要做的操作远比

这些小儿科复杂呢?   那就是Vim为什么要引入命令记录的原因.   使用命令

记录分三个步骤1

1.   使用"qfregisterg"命令开始,   后续的动作将被记录进名为fregisterg的

寄存器中.   给出的寄存器名字必需是a到z之间的一个字母2

2   执行你要执行的操作3.

3.   按下q以结束对命令的记录(注意仅仅是q一个字符,   不要键入多

余的字符).

现在你可以通过"@frecordingg"命令来执行刚刚记录下来的记录宏

了.下面的例子将演示如何实际运行该功能.   假如你有如下的文件名列

表:

stdio.h

fcntl.h

unistd.h

stdlib.h

而你实际想要的结果如下:

#include   "stdio.h"

#include   "fcntl.h"

#include   "unistd.h"

#include   "stdlib.h"

将光标移动到第一行上.   接下来执行:

qa   开始将后续的命令记入寄存器a

^   将光标移动到行首

i\#include   "   在该行之前插入#include   "

$   移动到行尾

a"   在行尾加上"字符

j   移到下一行

q   停止记录

现在你已经将对第一行的操作完成了一遍,   对其它三行只需要执

行3次"@"命令"@a"命令也可以加一个数字前辍1,   这会使该记录被回放由

该数字指定的次数.   在上面的例子中是:

normal   mode   command

3@a

e)   把一段文字转换为全部大写。

~   交换大小写(a   ->   A,   A   ->   a)

U   将小写变大写(a   ->   A,   A   ->   A)

u   将大写变小写(a   ->   a,   A   ->   a)

drwxrwsr-x         7   dijk           team                   4096     4月     8   19:34   qingli

a)   这里的   s   属性有何作用?

set-uid位。当程序执行的时候,会改变执行权限,既设置了set-uid位后程序的执行权限变为文件所有者权限。

b)   属性字段后的数字   7   表示什么?

子目录的个数   包含.   ..目录。

liback.la     库文件的后缀.la是什么含义?

表示libback是个静态库。

b)   属性字段后的数字   7   表示什么?

子目录的个数   包含.   ..目录。?

这里的7,应该是指链接到此文件的个数吧.!

这里的7,应该是指链接到此文件的个数吧.!

==========================================

链接是ln创建的文件??

这样解释把:

7专业的叫法是连接记数。

任何一个叶目录(不包含任何其他目录,也就是子目录的目录)其连接记数总是2,数值2来自于命名该目录的目录名以及该目录中的.项。当创建一个子目录该子目录里的..项指向他的父目录,使父目录的连接记数加1。

所以也可以说7是子目录的个数+目录名+.

我上面说的..不包含在内。(不好意思)

linux vi 撤销与恢复,vi撤销与恢复相关推荐

  1. 常见的Linux查看检索归档文件及vi文本编辑器操作大全

    常见的Linux查看检索归档文件及vi文本编辑器操作大全 一.Linux目录结构 1.1 树形目录结构 1.2 根目录 1.3 常见的子目录 二.查看及检索文件 2.1 查看文件内容 -- cat命令 ...

  2. Linux中什么命令显示vi缩写,Linux命令(八)——vi编辑器的使用

    vi编辑器是linux系统下的标准正文编辑器,有三种基本模式:命令行模式.插入模式和底行命令模式. 1.命令行模式:控制屏幕光标的移动,字符.字或行的删除,移动复制某区段及进入插入模式或底行命令模式下 ...

  3. linux vim撤销上次编辑,vim撤销与重做

    在vi中按u可以撤销一次操作 u 撤销上一步的操作Ctrl+r 恢复上一步被撤销的操作 注意:如果你输入"u"两次,你的文本恢复原样,那应该是你的Vim被配置在Vi兼容模式了.重做 ...

  4. linux操作系统 第03章 vi文本编辑器

    第3章    vi文本编辑器 3.1  vi文本编辑器概述 与Unix相同,Linux本质上是一个文本驱动(text-driven)的操作系统.文本文件就是全部由ASCII码字符及某种语言的编码字符构 ...

  5. Linux学习(三)--vi和vim编辑器

    Linux学习–vi和vim编辑器 一.基本介绍   首先,我们需要明白一点,所有的Linux系统内都会默认安装vi文本编辑器:   其次,vim可以看做是vi的增强版,具有程序编辑的能力,可以主动的 ...

  6. Linux文件管理命令vi,linux人云亦云(16)文件管理之VI命令一

    vi或vim是linux下非常强大,使用非常普遍的一个全屏幕文本编辑器,vim是vi的高级版本. 多数的linux操作系统都自带vi编辑器.可见其强大与普遍. 下面我们就来学习一下这个神秘的文本年编辑 ...

  7. linux常用文本编辑器nano/vi/vim

    Linux下有很多文本编辑器,其中系统(不管哪个分支)都会自带nano和vi这两个最基本的编辑器.vim相当于vi的升级版.这里我们依次来讲解这几个编辑器的用法. 1.nano 直接在命令行中敲入na ...

  8. linux命令-文本编辑器命令vi

    文本编辑器命令vi 文本编辑器命令vi 1.文本编辑器的作用 2.linux中最常用的文本编辑器命令 3.vi编辑器的三种工作模式 (1)命令模式 (2)输入模式(插入模式) (3)末行模式 末行模式 ...

  9. linux创建和编辑文件,linux基础-第九单元 利用vi编辑器创建和编辑正文文件

    vi编辑器简介 什么是vi vi编辑器的操作模式 vi编辑器的3种基本模式 在vi编辑器中光标的移动 移动光标位置的键与光标移动间的关系 进入插入模式 从命令行模式进入插入模式的命令 在命令行模式下删 ...

最新文章

  1. 基于Sharding Sphere实现数据“一键脱敏”
  2. Kubernetes各组件的功能
  3. 一段时间以来的SEO优化结果
  4. Linux三大主流网站构建平台,Linux快速构建LAMP网站平台
  5. Jquerymobile 简单安装
  6. mq服务器与客户端消息同步,使用 ActiveMQ 实现JMS 异步调用
  7. 世界坐标系到观察坐标系的变换步骤_shader观察(像机)矩阵变换的一己之见
  8. .net中三种Timer使用总结
  9. vue-loader was used without the corresponding plugin. Make sure to include VueLoad……
  10. 7.2.5 dps 测试软件,魔兽7.2.5版本DPS专精Reroll指南视频:近战篇
  11. 在阿帕奇服务器布置文件,Apache文件列表服务器美化 index of /
  12. 2022react面试题整理
  13. Response学习
  14. 旗帜软件工作室——第一届年会总结
  15. 2019年5月7日公布的全国水质排行榜_全国城市水质排名一览表
  16. 在暴风上市前,虚拟现实团队就跑了
  17. Docker部署 Oracle12c
  18. zbbz的lisp_Github上四种Lisp方言的流行度
  19. 打印机常见问题与解决方法 1
  20. Ext JS4序列教程之一 :Layout布局

热门文章

  1. 安装meme_新的Meme订单:通过简单的浏览器缓存更改游戏
  2. Stateflow中的真值表注意事项
  3. Python 实现邮件发送功能(进阶)
  4. python中那些鲜为人知的功能特性
  5. 使用Python打造一款间谍程序
  6. Apache Flink新场景——OLAP引擎
  7. 服务器的数据库 mysql 开放远程连接
  8. VS2010新建Web网站与新建Web应用程序的区别
  9. lambda 对象初始化器 集合初始化器
  10. ML《决策树(三)CART》