`
hengxing2009
  • 浏览: 89106 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Linux vi编辑器

阅读更多
#插入模式
【i】切换进入插入模式,从光标当前位置开始输入文件
【a】从目前光标所在位置的下一个位置进入插入模式
【o】当前光标的下一行新增一行进入插入模式
【O】当前光标的上一行新增一行进入插入模式

#区域选择模式

区域选择模式是vi里面很少用到的模式,类似文本编辑器UltraEdit的列块模式。

【v】 字符块区域模式(VISUAL),光标移动到的区域将会被选择中
【V】 行区域模式(VISUAL LINE),光标移动到的行将会被选中
【ctrl+v 】 方块选择模式(VISUAL BLOCK),类似UltraEdit的列块模式
【y】 复制选中区域
【d】 刪除选中区域

#移动光标
【ctrl + b】:屏幕往"后"移动一页
【ctrl + f】:屏幕往"前"移动一页
【ctrl + u】:屏幕往"后"移动半页
【ctrl + d】:屏幕往"前"移动半页
【G】:移动到文章的最后
【$】:移动到光标所在行的"行尾"
【^】:移动到光标所在行的"行首"
【w】:光标跳到下个字的开头
【e】:光标跳到下个字的字尾
【b】:光标回到上个字的开头
【nl】:光标移到该行的第n个位置。eg,5l,56l。
【shift + a】:光标移动至该行行尾,并自动切换为insert模式

【)】 :光标移至句尾
【(】 :光标移至句首
【}】:光标移至段落开头
【{】:光标移至段落结尾
【nG】:光标移至第n行首
【n+】:光标下移n行
【n-】:光标上移n行
【n$】:光标移至第n行尾
【H】:光标移至屏幕顶行
【M】:光标移至屏幕中间行
【L】:光标移至屏幕最后行
【0】:(注意是数字零)光标移至当前行首
【$】:光标移至当前行尾

#复制
【yw】:将光标所在之处到字尾的字符复制到缓冲区中
【nyw】:复制#个字到缓冲区
【yy】:复制光标所在行到缓冲区
【nyy】:从光标当前行开始复制n行。eg,「6yy」表示复制光标行开始的往下6行文字
【p】:小写字母p,将缓冲区内的字符插入到光标之后的下一行
【P】:大写字母P,将缓冲区内的字符插入到光标之前的上一行

注意:所有与"y"有关的复制命令都必须与"p"配合才能完成复制与粘贴功能。

#替换文本字符
【r】:替换光标所在处的字符
【R】:替换光标所到之处的字符为输入的字符,直到按下【ESC】键为止

另外,关于批量替换的标准语法如下:【:[范围]s/old/new/[cgi]】
eg,最常用的两种替换:
【:s/old/new/g】:替换光标当前所在行的字符为新的字符
【:%s/old/new/g】:全文替换

[范围]是任意的行范围,可以使用如下值:

•行号
•$(文件末尾)
•.(当前行)
•%(当前文件)
•或者两个行号之间加个逗号,eg:【:1,5s/../../..】
•或者可以这样【:行号,+n】,这表示当前指定行及其下面n行将被替换

[cgi]是c,g,i中间的一个或者什么也没有,定义如下:

•c告诉vi每次替换的时候要给提示
•g是说对所有一行中出现的地方都做替换
•i则是指在查找时不区分大小写
•如果最后一个斜杠(/)后面没有东西的话,那么vi只替换在行中第一次匹配的地方

注意:
替换文本时遇到需要替换斜杠"/"时,需要用反斜杠"\/\”进行转义,避免混淆。
eg,将文件里的"a/b”全部替换为"ab”,语法为【:%s/a\/\b/ab/g】

#行首尾添加字符

这是vi里面特别实用的功能,适合生产批量脚本。用得好会比excel,utrledit还方便。

1.全文行首添加字符串test
【g/^/s//test/g 】或是【:%s/^/test/g】

2.全文行尾添加字符串
【:g/$/s//test/g】或是【:%s/$/test/g】

3.n1至n2行的行首添加字符串
【:n1,n2s/^/test/】

注: ^表示行首,$表示行尾。

#替换"^M”字符
在Linux下使用vi来查看一些在Windows下创建的文本文件,有时会发现在行尾有一些“^M”。有如下种方法可以处理:

1.使用dos2unix命令。一般的linux分发版本中都带有这个小工具,使用起来很方便:
$ dos2unix filename
上面的命令会去掉行尾的^M。

2.使用vi的替换功能。启动vi,进入命令模式,输入以下命令:
【:%s/^M$//g】 # 去掉行尾的^M。
【:%s/^M//g】 # 去掉所有的^M。
:%s/^M/[ctrl-v]+[enter]/g # 将^M替换成回车。
:%s/^M/\r/g # 将^M替换成回车。

3.使用sed命令。和vi的用法相似: 
$ sed -e 's/^M/\n/g' filename

注意:这里的"^M”都要使用"CTRL+V+M”生成,没法直接键入,也不能复制粘帖过来。

#删除文字
【x】:每按一次,删除光标所在位置的"后面"一个字符。
【nx】:删除光标之后的6个字符。eg,「6x」表示删除光标所在位置的"后面"6个字符。
【X】:大写的X,每按一次,删除光标所在位置的"前面"一个字符。
【nX】:删除光标之前的n个字符。eg,「20X」表示删除光标所在位置的"前面"20个字符。
【dd】:删除光标所在行。
【ndd】:从光标所在行开始删除n行。eg,【5dd】表示从当前行开始删除5行。

【ndw或ndW】:删除光标处开始及其后的n-1个字
【do】:删至行首
【d$】:删至行尾
【Ctrl+u】:删除输入方式下所输入的文本

#查找文本
【/<文本>】将向下查找
【?<文本>】将向上查找

另外,在vi中,??或者//将重复上次查找。 n将查找文本下一次的出现位置, N重复上次查找,不过逆转了查找的方向。

#插入一个文件
【:r file_name】
eg,
要插入文件/root/1.log, 可以敲输入":r /root/1.log”。
如果是在当前目录下插入文件,则直接输入文件名即可。

#其他
【:set nu】显示行号
【:set nonu】关闭行号
分享到:
评论

相关推荐

    Linux Vi编辑器技术

    Linux Vi 编辑器技术 Linux Vi 编辑器是一种功能强大且灵活的文本编辑器,它广泛应用于 Linux/Unix 操作系统中。Vi 编辑器提供了三种模式:命令模式、输入模式和末行模式,每种模式都有其对应的编辑操作命令。 ...

    linux vi编辑器使用大全

    Linux vi 编辑器使用大全 Linux vi 编辑器是 Unix-like 操作系统中的一个传统编辑器,具有功能强大、灵活性高、使用广泛等特点。下面将对 vi 编辑器的使用方法进行总结,包括一般模式、编辑模式和指令列模式下的...

    linux vi编辑器手册 linux常用命令

    本手册将深入探讨Linux VI编辑器的使用方法以及一些常用的Linux命令,帮助用户更高效地管理和操作文件。 ### Linux VI编辑器 VI编辑器分为两种模式:命令模式和插入模式。在命令模式下,你可以移动光标、删除文本...

    Linux vi编辑器使用方法

    ### Linux vi编辑器使用方法详解 #### 一、vi编辑器概述 vi编辑器作为所有Unix及Linux系统下的标准编辑工具,在系统管理、脚本编写等方面具有不可替代的地位。其功能强大,支持多种操作模式,使得用户能够在无需...

    Linux VI编辑器基础

    Linux VI编辑器是Unix和Linux系统中的标准文本编辑器,因其高效且无需图形界面而备受推崇,尤其在系统和服务器管理中发挥着不可替代的作用。VI编辑器有三种主要模式:命令行模式、插入模式和底行模式。理解并熟练...

    云计算技术拓展学习-Linuxvi编辑器.pptx

    【云计算技术拓展学习-Linux vi编辑器】 在深入探索云计算技术的应用实践时,掌握基础的Linux操作技巧至关重要,其中Linux vi编辑器是一个不可或缺的工具。vi全称visual interface,是Linux系统中最常用的文本编辑...

    linuxVI编辑器相关命令详解.pdf

    Linux VI 编辑器相关命令详解 VI 编辑器是 Linux 和 Unix 上最基本的文本编辑器,工作在字符模式下。它的强大不逊色于任何最新的文本编辑器。 VI 编辑器是 Visual interface 的简称,通常称之为 VI。它在 Linux 上...

    实验三:Linux VI编辑器.doc

    #### 一、Linux VI编辑器简介 **VI编辑器**是Linux系统中最常用的文本编辑工具之一,适用于所有类型的文本文件编辑。它具有强大的功能和灵活的操作方式,深受用户喜爱。 ##### 1. 启动VI编辑器 - 直接在命令行...

    linux实验报告vi编辑器的使用.pdf

    Linux实验报告Vi编辑器的使用 本文将对Vi编辑器的使用进行详细的介绍,包括Vi编辑器的基本概念、使用方法和技巧,并通过实验步骤来加深对Vi编辑器的理解和掌握。 一、实验目的 学习使用Vi编辑器建立、编辑、显示...

    10分钟掌握Linux vi编辑器常见命令的使用,最简单的vi编辑器教程_C语言中文网.html

    10分钟掌握Linux vi编辑器常见命令的使用,最简单的vi编辑器教程_C语言中文网.html

    Linux vi编辑器使用.docx

    linux系统下vi编辑器详细教程,学习如何使用vi编辑器!

    linux vi编辑器操作指南

    Linux下的VI编辑器,也被称为Vim(Vi Improved),是一种强大的文本编辑工具,适用于系统管理员和程序员。它具有三种主要工作模式:插入模式、编辑模式(也称正常模式)和命令模式。 1. **插入模式**:在此模式下,...

    Linux实习三报告 VI编辑器及shell命令

    【Linux实习三报告:VI编辑器及shell命令】 在Linux操作系统中,掌握VI编辑器和shell命令对于日常的系统管理和开发工作至关重要。这次实习的主要目标是深入理解和实践这两个核心工具。 **一、VI编辑器** VI...

    linux上vi编辑器常用命令

    ### Linux平台上Vi编辑器的核心命令解析 #### 一、Vi编辑器简介 Vi编辑器作为Linux平台下一款轻量级的文本编辑工具,在系统管理、软件开发等领域具有广泛的应用价值。尤其是在Ubuntu这样的发行版中,尽管相较于Red ...

    Linux下的vi编辑器配置文件

    文本编辑器Vi 简介 Vi是一个功能强大的全屏幕文本编辑器,是UNIX 上最常用的文本编辑器,它的作用是建立、编辑、显示文本文件。 pVi没有菜单,只有命令。 注意:Vi命令并不锁住所编辑的文件,因此多个用户可能同时...

    linux vi编辑器的使用

    Linux中的vi编辑器是一款强大的文本编辑工具,是Unix和Linux系统中最常用的文本编辑器之一。它的增强版vim在Linux环境中广泛使用,与vi完全兼容。vi编辑器在操作时有三种状态:命令模式、插入模式和末行模式。 1. *...

    linux下Vi编辑器常用命令

    ### Linux 下 Vi 编辑器常用命令详解 #### 一、进入 vi 的命令 1. **vi filename**:此命令用于打开或编辑一个名为 `filename` 的文件,并且默认会进入命令模式。 2. **vi +n filename**:通过这个命令可以打开文件...

    《Vi 编辑器》pdf版

    尽管文件内容未包含vi编辑器的知识点,但从文件提供的标题和描述中,我们可以推断这本书是一本适合对vi编辑器感兴趣的Linux用户、系统管理员和程序员的指南。通过这本书,读者可以深入学习vi编辑器,掌握文本编辑的...

Global site tag (gtag.js) - Google Analytics