末行模式下的命令

1、       w:写文件,将编辑的内容保存到文件系统。

2、       w!:如果只读文件,强制写入系统。

3、       q!:退出vi,但文件内容修改的话,系统要提示是否保存。

4、       wq!:保存内容,并退出。

5、       /:查找匹配的字符串,在编辑时,要查找包含某个字符串,可使用/字符串“”,自动查找,系统会突然显示所找到的字符串,并转到第一个字符串。

6、       n:表示加载新文件,若加载目录下的文件hello.c,可使用“n hello.c”。

7、       e:表示创建新文件。

编辑多个文件

1、       vi编辑器允许用户一次调入多个文件进行编辑,但是每次只能对单个文件进行修改,要同时调入多个文件,依次进行编辑,使用的命令格式:

vi [文件1] [文件2 [文件3]…….[文件3]。其中文件1 文件2 文件3表示要使用vi查看文件的名称。当用户完成第一个文件编辑并且存盘后,在末行模式下输入 n (next)就能进入第二个文件;输入rew能回到首文件,输入args就会在最后一行显示当前缓冲区的文件名称。

分割多个窗口

1、在末行模式下输入split,即实现窗口分割功能。在命令行模式下输入ctrl+w,将光标移动到下一个窗口。关闭窗口:q! ,wq!,或者close,quit。垂直分割vsplit。

2、数据恢复:在vi编辑器下可以使用 –r命令恢复。例如:vi -r name.txt。

3、定义新命令:进行程序或者文本编辑时,对于常用的字符或者短语,vi提供使用定义快捷输入的方式。Vi中经常使用新定义的方法:第一种使用ab命令,另一种在末行命令模式下使用imap或者map命令。 ab命令方式:ab字符1 字符串1.在该模式下使用字符1代替字符串1.。  imap命令方法:imap 快捷键 需要替换的字符串。

4、文本整体移动:文本左右移动>>  <<。上下移动m:n m k,其中n表示源目的行,m表示移动的操作,k表示将移动的行移动到第k行下方。

vi的高级使用

vi编辑器中用户可以根据自己的需要灵活的制定工作环境,这些命令一旦设置就会立即生效。

1、ai:autoindent选项把每一行缩排为与其上一行首对其,它的默认值是autoindent.off.

2、ap:autoprint选项在当前行改变时将它打印到屏幕上,他的默认值是autoprint.on.

3、sm:showmatch选项在输入右圆括号时显示匹配的左圆括号,这个选项对于编写代码的程序而言非常有用,默认值是showmatch off

4、Wm=n:warpmargin选项定义一个右边距。在本命令语法中,n是一个整数。如果n大于0,那么本命令强迫回车,以便留出右边距。例如 wm=5告诉vi当字符出现在行内的最后5个字符中时换行。默认wm=0.

5、report:report选项设置编辑操作改变的次数,这个次数能导致一个信息出现在状态行上。例如report=3,将在你删除3行后触发信息,当你删除少于3行时不显示信息,他的默认值为5、

6、smd:showmode选项在给出相关命令时,在状态行下面显示插入,它的默认值 showmode off。

7、ws:word search:选项在查找期间遇到文件结束符时,从结束符处绕文件到文件开始字符,继续查找。默认值为on。

8、eb:errorbells:选项在出现命令错误时使计算机报警。它的默认值为 errorbells off。

9、redaw:redraw选项发生变化时使屏幕刷新,默认值为redraw  on。

10、warn:当已修改了缓冲区内容,但没有将缓冲区存在磁盘中却试图突出vi时,warn选项将显示一个警告信息。默认值为on。

11、fl:通常情况下在vi编辑器汇总输入无效的命令或者按下ESC时,都会发出滴答的声音,设置为flash表示不再发出声音,再设置为onflash表示发出声音。

12、list:设置list,会使vi中的Tab符号用^1表示,用$表示每行的结束,设置nolist表示用空白符号显示Tab,不显示行的结束符。

13、ic:ignorecase通常情况下在vi中区分大小写的搜索,即区分大写字母和小写字母,当设置为ignorecase将不再区分大小写,而设置noignorecase将恢复大小写搜索。

14、wrap:erap用于控制不能在屏幕一行显示的较长行,设置为true表示自动换行,设置为nowrap表示不自动换行,默认自动换行。

15、如果用户要修改环境的配置,只需在末行模式下输入set加相关的参数即可。

16、变量设置方法:尽管上述方法可以对vi进行设置,但这些设置仅可以在末行模式下使用,有些用户可能想在加载文件时,就让他们自动设置,而不需要内粗编辑文件时都手工进行。鉴于此,vi使用EXINIT变量自动设置选项,通过set命令设置想要的选项。任何时候进入vi编辑器,存储在EXINIT中的set命令都会自动执行。

$EXINIT=’set  numbert’  :在任何时候让vi的行前都带行号。

利用vi编辑器创建和编辑正文文件(二)的更多相关文章

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

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

  2. 第九单元 利用vi编辑器创建和编辑正文文件

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

  3. 利用vi编辑器创建和编辑正文文件(一)

    1.       vim是vi的升级版本. 2.       vi所UNIX和Linux系统内嵌的标准文编辑器,可执行,修改,复制,移动,粘贴和删除正文等命令,也可以进行移动光标,搜索字符和退出vi的 ...

  4. Linux基础-5.利用vi编辑器创建和编辑正文文件

    1.vi编辑器简介 1)掌握vi编辑器的定义:vi编辑器是Linux和Unix上最基本的文本编辑器,工作在字符模式下.由于不需要图形界面,vi是效率很高的文本编辑器.尽管在Linux上也有很多图形界面 ...

  5. Linux 正文处理命令及tar命令 利用vi编辑器创建和编辑正文文件

    要点回顾 1) 将用户信息数据库文件和组信息数据库文件纵向合并为一个文件/1.txt(覆盖) cp /etc/passwd . cat ./passwd >1.txt cp /etc/group ...

  6. Linux基础------文件打包解包---tar命令,文件压缩解压---命令gzip,vim编辑器创建和编辑正文件,磁盘分区/格式化,软/硬链接

    作业一:1) 将用户信息数据库文件和组信息数据库文件纵向合并为一个文件/1.txt(覆盖) cat /etc/passwd /etc/group > /1.txt2) 将用户信息数据库文件和用户 ...

  7. 创建和编辑 crontab 文件

    http://docs.oracle.com/cd/E24847_01/html/819-6951/sysrescron-24589.html 创建和编辑 crontab 文件 创建 crontab  ...

  8. 非正常关闭vi编辑器时会生成一个.swp文件

    非正常关闭vi编辑器时会生成一个.swp文件 关于swp文件 使用vi,经常可以看到swp这个文件,那这个文件是怎么产生的呢,当你打开一个文件,vi就会生成这么一个.(filename)swp文件以备 ...

  9. 使用Python Shapefile Library创建和编辑Shapefile文件

    介绍 shapefile是GIS中非常重要的一种数据类型,在ArcGIS中被称为要素类(Feature Classes),主要包括点(point).线(polyline)和多边形(polygon).P ...

随机推荐

  1. buffer IO和direct IO

    最近在看很多框架,redis,kafka等底层都涉及到文件IO操作的效率问题,所以查了些资料,看到这篇文章讲的比较明白些,贴出来留存. 链接地址: https://www.ibm.com/develo ...

  2. ----Arrow functions----

    Arrow functions Arrow functions表达式相比函数表达式有更短的语法,没有自己的this.argument.super或者new.target. 1.语法规则: 基础语法: ...

  3. CENTOS7上安装MYSQL5.7.21流程

    1系统约定安装文件下载目录:/data/softwareMysql目录安装位置:/usr/local/mysql数据库保存位置:/data/mysql日志保存位置:/data/log/mysql 2下 ...

  4. shell知识

    shell基本的语句 一:if语句 格式: if [ #条件的判断 ];then #执行的动作 fi 操作符 + 加 - 减 * 乘 /   除[取整数商] % 余[取余数] 数值的比较 参数 说明 ...

  5. contaner

    what Container技术是直接将一个应用程序所需的相关程序代码.函式库.环境配置文件都打包起来建立沙盒执行环境 history 早在1982年,Unix系统内建的chroot机制也是一种Con ...

  6. FeatureTools

    featuretools一种自动特征工程的工具.可快速生成较多类型的特征,取得不错的效果. 1.输入:把原始数据转换成featuretools的输入 2. 可以适当调整特征个数,防止训练的模型过拟合 ...

  7. JAVA主流日志梳理

    JAVA主流日志梳理 引入 历史故事 Log4j - JDK1.3及以前 JUL - JDK1.4 JCL - 日志门面commons-logging的出现 SLF4j - 可能是最好的日志框架 lo ...

  8. Linux二进制分析PDF

    链接:https://pan.baidu.com/s/1lp5mz30J3RamFyQIXRvx5w 提取码:vcdq 我就是看不惯csdn的付费下载,链接失效了就评论区留言,我能收到邮件.

  9. JavaGC学习笔记

    1.简介Java在JVM虚拟机上的垃圾回收(GC)机制,在合适的时间触发垃圾回收,将不需要的内存空间回收释放,避免无限制的内存增长导致的OOM. 1.1 Java堆内存结构Java将堆内存分为3大部分 ...

  10. ArcSDE

    ArcSDE,即数据通路,是ArcGIS的空间数据引擎,它是在关系数据库管理系统(RDBMS)中存储和管理多用户空间数据库的通路.从空间数据管理的角度看,ArcSDE是一个连续的空间数据模型,借助这一 ...