vi 编辑器中有三种状态模式  【vi 文件名(或路径+文件名)】

1.命令模式

2.输入模式

3.末行模式

三种模式间的相互转换

vi编辑器的启动与退出

直接进入编辑环境

$ vi

进入编辑环境并打开(新建)文件

$ vi myfile

退出vi编辑环境

输入末行命令放弃对文件的修改,并退出编辑器

:q!

文件保存与另存为

保存文件

保存对vi编辑器中已打开文件的修改

:w

另存为文件

将vi编辑器中的内容另存为指定文件名

:w myfile

退出vi编辑器的多种方法:

未修改退出

没有对vi编辑器中打开的文件进行修改,或已对修改进行了保存,直接退出vi编辑器

:q

保存并退出

对vi编辑器中的文件进行保存并退出vi编辑器

:wq

不保存退出

放弃对文件内容的修改,并退出vi编辑器

:q!

光标的移动和翻页操作

操作类型光标操作键功能

h向左移动光标

l向右移动光标

k向上移动光标

j向下移动光标

翻页Ctrl + f向前翻整页

Ctrl + b向后翻整页

Ctrl + u向前翻半页

Ctrl + d向后翻半页

行内快速跳转

操作键功能

^将光标快速跳转到本行的行首字符

$将光标快速跳转到本行的行尾字符

w将光标快速跳转到当前光标所在位置的后一个单词的首字母

b将光标快速跳转到当前光标所在位置的前一个单词的首字母

e将光标快速跳转到当前光标所在位置的后一个单词的尾字母

文件内行间快速跳转

命令功能

:set nu 在编辑器中显示行号

:set nonu 取消编辑器中的行号显示

1G跳转到文件的首行

G跳转到文件的末尾行

#G跳转到文件中的第#行

进入输入模式

命令功能

i在当前光标处进入插入状态

a在当前光标后进入插入状态

A将光标移动到当前行的行末,并进入插入状态

o在当前行的下面插入新行,光标移动到新行的行首,进入插入状态

O在当前行的上面插入新行,光标移动到新行的行首,进入插入状态

cw删除当前光标到所在单词尾部的字符,并进入插入状态

c$删除当前光标到行尾的字符,并进入插入状态

c^命令删除当前光标之前(不包括光标上的字符)到行首的字符,并进入插入状态

输入模式的编辑键操作

按键功能

方向键进行上下左右方向的光标移动

Home快速定位光标到行首

End快速定位光标到行尾

PageUp进行文本的向上翻页

PageDown进行文本的向下翻页

Backspace删除光标左侧的字符

Del删除光标位置的字符

删除操作

命令功能

x删除光标处的单个字符

dd删除光标所在行

dw删除当前字符到单词尾(包括空格)的所有字符

de删除当前字符到单词尾(不包括单词尾部的空格)的所有字符

d$删除当前字符到行尾的所有字符

d^删除当前字符到行首的所有字符

J删除光标所在行行尾的换行符,相当于合并当前行和下一行的内容

撤消操作

命令功能

u取消最近一次的操作,并恢复操作结果

可以多次使用u命令恢复已进行的多步操作

U取消对当前行进行的所有操作

Ctrl + r对使用u命令撤销的操作进行恢复

复制与粘贴操作

命令功能

yy复制当前行整行的内容到vi缓冲区

yw复制当前光标到单词尾字符的内容到vi缓冲区

y$复制当前光标到行尾的内容到vi缓冲区

y^复制当前光标到行首的内容到vi缓冲区

p读取vi缓冲区中的内容,并粘贴到光标当前的位置(不覆盖文件已有的内容)

字符串查找操作

命令功能

/word从上而下在文件中查找字符串“word”

?word 从下而上在文件中查找字符串“word”

n定位下一个匹配的被查找字符串

N定位上一个匹配的被查找字符串

字符串替换操作

命令功能

:s/old/new 将当前行中查找到的第一个字符“old” 串替换为“new”

:s/old/new/g 将当前行中查找到的所有字符串“old” 替换为“new”

:#,#s/old/new/g 在行号“#,#”范围内替换所有的字符串“old”为“new”

:%s/old/new/g 在整个文件范围内替换所有的字符串“old”为“new”

:s/old/new/c 在替换命令末尾加入c命令,将对每个替换动作提示用户进行确认

vi编辑器的在线帮助

使用vi在线帮助需安装的软件包

vim-common-6.3.035-3.i386.rpm

vim-enhanced-6.3.035-3.i386.rpm

软件包在RHEL5的第2张安装光盘

使用vi在线帮助的两种方法

在vi编辑器中按“F1”键

输入help末行命令

shell 文本操作命令的更多相关文章

  1. [Linux] Linux常用文本操作命令整理

    简单的总结一下常用的一些实用的Linux文本操作命令,包括wc(统计).cut(切分).sort(排序).uniq(去重).grep(查找).sed(替换.插入.删除).awk(文本分析). 1.统计 ...

  2. Linux常用文本操作命令整理

    阅读目录 1.统计命令——wc 2.切分命令——cut 3.排序命令——sort 4.去重命令——uniq 5.查找命令——grep 6.替换/查找/删除命令——sed 7.强大的文本分析命令——aw ...

  3. Linux - 常见Shell文本处理方法

    Common Shell Text Processing 珠玉在前,不再赘言. Linux Shell 文本处理工具集锦:http://blog.jobbole.com/99063/ 数据工程师常用的 ...

  4. shell文本处理工具总结

    shell文本处理工具总结 为了效率,应该熟练的掌握自动化处理相关的知识和技能,能力就表现在做同样的一件事情,可以做的很好的同时,耗时还很短. 再次总结shell文本处理的相关规则,对提高软件调试效率 ...

  5. Linux shell文本处理工具

    搞定Linux Shell文本处理工具,看完这篇集锦就够了 Linux Shell是一种基本功,由于怪异的语法加之较差的可读性,通常被Python等脚本代替.既然是基本功,那就需要掌握,毕竟学习She ...

  6. Linux系列之文本操作命令

    前言 Linux 有八个常用的文本操作命令:cat.head.tail.nl.grep.sed.more.less.本文介绍它们的区别和简单用法. cat命令 显示文本的最基本命令. cat file ...

  7. Linux Shell 文本处理工具集锦 zz

    内容目录: find 文件查找 grep 文本搜索 xargs 命令行参数转换 sort 排序 uniq 消除重复行 用tr进行转换 cut 按列切分文本 paste 按列拼接文本 wc 统计行和字符 ...

  8. Shell文本处理 - 匹配与编辑

    正则表达式 符号 含义 . 匹配任意ASCII中任意单个字符,或是字母,或是数字 ^ 匹配行首 $ 匹配行尾 * 匹配任意字符或前一个的一次或多次重复 \ 转义,被转义的有$ . ‘ “ * [ ] ...

  9. Linux Shell 文本处理工具集锦

    本文将介绍Linux下使用Shell处理文本时最常用的工具:find.grep.xargs.sort.uniq.tr.cut.paste.wc.sed.awk:提供的例子和参数都是最常用和最为实用的: ...

随机推荐

  1. Oracle安装、Navicat for Oracle、JDBCl连接、获取表结构

    Oracle安装 Navicat for Oracle配置 Oracle JDBC连接(增删改查) Oracle安装 环境windows 7 64位 安装版本:oracle 11g(64位) 下载地址 ...

  2. Web渗透测试(sql注入 access,mssql,mysql,oracle,)

    Access数据库注入: access数据库由微软发布的关系型数据库(小型的),安全性差. access数据库后缀名位*.mdb, asp中连接字符串应用-- "Driver={micros ...

  3. 理解Annotation

    一.概念 Annontation是Java5开始引入的新特征.中文名称一般叫注解.它提供了一种安全的类似注释的机制,用来将任何的信息或元数据(metadata)与程序元素(类.方法.成员变量等)进行关 ...

  4. Filter的注册2

    既然Filter是一种COM组件,使用前就必须先注册.Filter的注册程序为regsvr32.exe (位于操作系统目录的system32子目录下).假设现在有一个Filter文件,它的完整路径为C ...

  5. arttemplate与webpack的应用

    模板渲染使用arttemplate,使用方法如下: 普通使用 普通使用把渲染模板写在<script>标签里面,引入arttemplate.js,从服务端接收数据(数组与对象的形式),然后调 ...

  6. 异常-----The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path。

    1, 找到新建页面所在的工程名字,然后左键选中,右键弹出功能菜单,选择Build Path,进入配置路径. 2, 在java build path 页面的下选择Libraries栏目(默认选择),点击 ...

  7. C#图解教程 第二十章 异步编程

    笔记 异步编程 什么是异步 示例 async/await特性的结构什么是异步方法 异步方法的控制流await表达式取消一个异步操作异常处理和await表达式在调用方法中同步地等待任务在异步方法中异步地 ...

  8. C#中(int)、Conver.Toint32()、int.Parse()三种类型转换方式的区别与联系--C#基础知识

    自己刚学习C#,总结了一些知识,想分享给大家.毕竟刚学习这门语言,学得不深,如果哪里有错误,请帮忙指出一下哈,谢谢! 1.(int)可用于单精度.双精度等其他数值类型的转换(到整型int),不能用于转 ...

  9. Mybatis【逆向工程,缓存,代理】知识要点

    前言 本文主要讲解Mybatis的以下知识点: Mybatis缓存 一级缓存 二级缓存 与Ehcache整合 Mapper代理 使用Mapper代理就不用写实现类了 逆向工程 自动生成代码 Mybat ...

  10. 【Luogu1337】平衡点(模拟退火)

    [Luogu1337]平衡点(模拟退火) 题面 洛谷 题解 和BZOJ3680吊打XXX是一样的.. 但是数据很强呀.. 疯狂调参 各种WA... 很无奈呀.... #include<iostr ...