10分钟 教你学会Linux/Unix下的vi文本编辑器
10分钟 教你学会Linux/Unix下的vi文本编辑器
vi编辑器是Unix/Linux系统管理员必须学会使用的编辑器。看了不少关于vi的资料,终于得到这个总结。不敢独享,和你们共享。
首先,记住vi编辑器的两个模式:1、命令模式 2、编辑模式。
在一个UNIX/Linux的shell命令或者一个以斜杠(/)、问号(?)或冒号(:)开始的vi命令后面用户需要键入回车键,而要切换到vi命令模式需要按Esc键。注意,以冒号(:)或者斜杠(/) 开始的vi命令会显示在屏幕底部,但其他命令都不会显示在屏幕上。
打开、写入和关闭文件(使用Enter键)
vi file 打开文件名为file的文件(UNIX shell命令)
:w 将工作缓冲区的变化写入默认文件中
:w file 将工作缓冲区的变化写入名为file的文件中
:q 退出vi编辑器
:wq 将工作缓冲区的变化写入文件并退出
:q! 不将工作缓冲区的变化写入文件并退出vi编辑器
插入文本(vi命令模式下使用)
a 在当前光标位置的右边添加文本
i 在当前光标的左边插入文本
A 在当前行的末尾添加文本
I 在当前行的开始出添加文本
O 在当前行的上面新建一行
o 在当前行的下面新建一行
R 替换(覆盖)当前光标位置以及以后的若干文本
J 连接光标所在行以及下一行,成为一行
移动光标
上下左右方向键 向箭头所示方向移动光标一个位置
h 向左
j 向下
k 向上
l 向右
空格键 向右
Backspace 向左
Enter 向下移动到下一行的行首
-(连字符键) 向上移动到上一行的行首
纠正错误(vi命令模式下使用)
x 删除一个字符
dd 删除当前行
ndd 上除当前行在内的n行
u 撤销上一次操作(最后一步)
U 撤销对当前行的所有操作
拼写检查(UNIX shell命令)
spell file 显示问及那file中找到的拼写错误
ispell file 显示问及那file中找到的拼写错误
搜索(vi命令模式下使用)
/word 向前搜索第一个出现的word
/ 继续向前搜索下一个word
?word 向后搜索第一个出现的word
? 继续向后搜索下一个word
跳跃到指定行(vi命令模式使用)
n+ 向前(向下)跳跃n行
n- 向后(向上)跳跃n行
nG 跳跃到行号为n的行,G为Go
G 跳跃到文件的底部
设置行号(vi命令模式下使用)
:set nu 在屏幕上显示行号
:set nonu 取消行号
复制和粘贴(vi命令模式下使用)
"knyy 复制n行到缓冲区"k
"kp 将缓冲区"k的内容粘贴到当前行的下面
全局替换文本(vi命令模式下使用)
:%s/old/new/g 用new替换文件中的所有old。s为substitution,替换的意思。g为global。
编辑另一个文件(vi命令模式下使用)
:e otherfile 编辑文件名为otherfile的文件
为命令行编辑制定一个编辑器(UNIX shell命令)
bindkey -v 指定vi编辑器(用于 tcsh)
VISUAL=vi 指定vi编辑器(用于 ksh)
set -o vi 指定vi编辑器(用于 bash)
缓冲区:
前面讲过,vi编辑器设计上是对工作缓冲区的文件副本进行编辑。在使用vi编辑器的时候,用户还可以访问其他缓冲区。总共有36个缓冲区。
◆ 未命名缓冲区
◆ 已命名缓冲区 "a、"b、"c、……、 "z
◆ 已编号缓冲区 "1、"2、"3、……、 "9
未命名缓冲区有时也叫做一般缓冲区。在修改文本时,旧文本并没有被立刻删除。vi将旧文本放在未命名缓冲区直到用户删除修改更多的文本。这样就可以实现撤 销,具体命令为 u。因为vi只有一个未命名缓冲区,所以只能撤销一次。
命令模式和编辑模式的切换:
如果不清楚当前所在的模式,可以连续按2次Esc键盘,主机会发出警报声,这样就肯定进入了命令模式。在命令模式下面,输入a A i I O o R都会进入编辑模式。所输入的这单个字符不会显示,也不会插入到文件中。
---︶ㄣ第二名
10分钟 教你学会Linux/Unix下的vi文本编辑器的更多相关文章
- 教你学会Linux/Unix下的vi文本编辑器
vi编辑器是Unix/Linux系统管理员必须学会使用的编辑器.看了不少关于vi的资料,终于得到这个总结. 首先,记住vi编辑器的两个模式:1.命令模式 2.编辑模式. 在一个UNIX/Linux的s ...
- 【python】10分钟教你用python打造贪吃蛇超详细教程
10分钟教你用python打造贪吃蛇超详细教程 在家闲着没妹子约, 刚好最近又学了一下python,听说pygame挺好玩的.今天就在家研究一下, 弄了个贪吃蛇出来.希望大家喜欢. 先看程序效果: 0 ...
- 10分钟教你用Python玩转微信之好友性别比例统计分析
01 前言+效果展示 想必,微信对于大家来说,是再熟悉不过的了.那么,大家想不想探索一下微信上的各种奥秘呢?今天,我们一起来简单分析一下微信上的好友性别比例吧~废话不多说,开始干活. 结果如下: 02 ...
- 10分钟教你用Python玩转微信之抓取好友个性签名制作词云
01 前言+展示 各位小伙伴我又来啦.今天带大家玩点好玩的东西,用Python抓取我们的微信好友个性签名,然后制作词云.怎样,有趣吧~好了,下面开始干活.我知道你们还是想先看看效果的. 后台登录: 词 ...
- 【C/C++】10分钟教你用C++写一个贪吃蛇附带AI功能(附源代码详解和下载)
C++编写贪吃蛇小游戏快速入门 刚学完C++.一时兴起,就花几天时间手动做了个贪吃蛇,后来觉得不过瘾,于是又加入了AI功能.希望大家Enjoy It. 效果图示 AI模式演示 imageimage 整 ...
- 【python】10分钟教你用python如何正确把妹
前言 今天没妹子约,刚好研究一下.如何用神奇的python打造一个把妹神器吧.看完这个,你们就能走向人生巅峰,迎娶白富美啦. 我知道你们想看看效果 image 当然啦,这只是测试版的效果,真正的版本可 ...
- 【python】10分钟教你用python下载和拼接微信好友头像图片
前言 相信微信大家是用得再多也不过了.那么,对于python+微信,又能玩出什么新的花样呢?下面小编就给大家带来一个好玩的东西.用python下载所有的微信好友的头像,然后拼接成一张大图.这样,大家就 ...
- 【云开发】10分钟零基础学会做一个快递查询微信小程序,快速掌握微信小程序开发技能(轮播图、API请求)
大家好,我叫小秃僧 这次分享的是10分钟零基础学会做一个快递查询微信小程序,快速掌握开发微信小程序技能. 这篇文章偏基础,特别适合还没有开发过微信小程序的童鞋,一些概念和逻辑我会讲细一点,尽可能用图说 ...
- 【Linux】linux/unix下telnet提示Escape character is '^]'的意义
在linux/unix下使用telnet hostname port连接上主机后会提示Escape character is '^]' 这个提示的意思是按Ctrl + ] 会呼出telnet的命令行, ...
随机推荐
- 2015第37周五javascript函数arguments对象巧用一
Javascript函数的一个巧妙利用:假定action中有一个JSONObject类型的对象data,其值有可能为空,则前台JSP页面的JS代码中想直接通过EL表达式,即${data}的形式访问对象 ...
- Redis源码阅读笔记(2)——字典(Map)实现原理
因为redis是用c写的,c中没有自带的map,所以redis自己实现了map,来看一下redis是怎么实现的. 1.redis字典基本数据类型 redis是用哈希表作为字典的底层实现,dictht是 ...
- [Java] JavaMail 发送 html 格式、带附件的邮件
本案例演示发送 html 格式,可带附件的邮件发送.发送纯文本邮件的例子可参照上一篇博文JavaMail 简单案例. EmailHelper, Email 的帮助类,向帮助类提供 SMTP 服务器域名 ...
- Postman 基本操作学习
History 所有使用postman发送的request都会保存在这里.点击之后会在当前Tab打开. 参考: Requests History Environments 这里用来设定当前reques ...
- DTD与XSD的区别
DTD=类型定义(Documnet Type Definition) XSD=XML结构定义 ( XML Schemas Definition ) DTD 就相当于 XML 中的“词汇”和“语法”,不 ...
- 安装完sql server 后修改计算机名后不能进行发布的订阅的解决办法
由于需要需要配置一个发布订阅,可是一直报告:" sql server 复制需要有实际的服务器名称才能连接到服务器,不支持通过别名.ip地址或其他任何备用名称进行连接.请指定实际的服务器名称“ ...
- Sublime编辑器 前端 必备插件
sublime编辑器前端必备插件 下面这一行是Package Control包安装,它是sublime的插件包管理器.新安装的sublime 里没有Package Control,按一下ctrl+~, ...
- JAVAEE filter总结
1. 为什么需要filter? filter相当于客户端和服务器端之间的一扇门,就像保安一样.作用:比如说设置字符集和权限控制等等. 2. 细节; * . 只能对post请求起作用 * .可以使 ...
- poj2239 Selecting Courses --- 二分图最大匹配
匈牙利算法模板题 有n门课程,每门课程可能有不同一时候间,不同一时候间的课程等价. 问不冲突的情况下最多能选多少门课. 建立二分图,一边顶点表示不同课程,还有一边表示课程的时间(hash一下). #i ...
- android shape的使用详解以及常用效果(渐变色、分割线、边框、半透明阴影效果等)
shape使用.渐变色.分割线.边框.半透明.半透明阴影效果. 首先简单了解一下shape中常见的属性.(详细介绍参看 api文档 ) 转载请注明:Rflyee_大飞: http://blog.cs ...