vi工作方式 命令状态:键盘输入解释为命令 vi一启动就进入命令方式,键盘输入解释为命令 一般按键无回显 以冒号可以引入ex命令和查找命令

Slides:



Advertisements
Similar presentations
1 ——含山县新教师集中培训 2015年10月17日 教学常规和课堂教学技能 含山县环峰第二小学 吴保东.
Advertisements

比一比,谁算得又快又准? 8+16 = =21 3×25 =75 比一比,谁算得又快又准? 9×9+7 = =482 注意: 先乘除,后加减.
第 3 章 UNIX 文本编辑程序. 第3章 第2页第3章 第2页 UNIX 的文本编辑程序 常用的文本编辑器  行编辑 ed  全屏幕编辑 vi 使用场合  行编辑 ed 常用于脚本程序中,使用输入重定向  例如:安装软件时,用来修改系统配置文件  vi 用于人机交互式编辑文本文件.
第二框 生命科技与生命伦理.
VI编辑器的使用 College of Information Science and Engineering
語文教學 教學理念 竹大附小 陳枝田 將地方圖案插入此投影片 選取〔插入〕功能表 〔圖片〕指令 選取〔從檔案〕指令 選取你的標幟圖片檔案
報告人:教育部會計處處長 黃 永 傳 日 期:103 年12 月27 日
第二章 计算机的基本组成和工作原理 任课教师:殷凤玲.
第六 章数据库访问页 6.1 数据访问页视图 6.2 创建数据访问页 6.3 编辑数据访问页 6.4 查看数据访问页 退出.
二月春风似剪刀, 这些变化得瞧瞧 主讲老师:王海 2016年1月27日20:00 YY频道:
关于市场营销的分析 ——以九阳豆浆机为例 品牌经营——让每一个家庭都拥有一台九阳豆浆机 营销管理——采取文化、概念、网络等营销组合
成才之路 · 语文 人教版 • 中国古代诗歌散文欣赏 路漫漫其修远兮 吾将上下而求索.
第二节 留 数 一、留数的引入 二、利用留数求积分 三、在无穷远点的留数 四、典型例题 五、小结与思考.
Tool Command Language --11级ACM班 金天行.
第三单元 单元写作学案 确立自信 学习反驳.
2016年1月20日20:00 YY频道:
授课教师简历 刘付才,男,中学高级教师,亳州一中南校体 育教研组长,全国体育优质课一等奖获得者,华佗 五禽戏第五十八代传承人;长期从事五禽戏教学和 研究工作,参与创编了国家级课题“校园五禽戏”; 2014年全国学生运动会展示中获得优秀表演奖; 2015年指导的五禽戏传人进行的五禽戏教学获得全 国一等奖,编著的《华佗五禽戏之简易健身操》即.
闲言碎语.
二十 石钟山记.
洪涝灾害重点传染病的预防 江苏省疾病预防控制中心 汪华.
小 桔 灯 市场赢利能力与战略 主讲:杨贤耀.
王 璐 中原工学院计算机学院 Linux操作系统 王 璐 中原工学院计算机学院
第一章 语言文字运用 专题五  挖掘隐含信息,准确实现图文转换.
践行新时期广东精神 推进广东公路文化繁荣与发展 ——关于广东省公路文化建设与实践的思考
C语言实验 第一课 标题:学号+姓名.
学习目标: 1.了解键盘键位及功能 2.能以正确的坐姿和规范的指法录入中英文
第二章 文字输入法 文字输入的方法 文字输入的内容 (1)键盘输入: (2)非键盘输入:扫描、手写设备、语音等方式 (1)英文输入:
键盘指法勤练习 漳潭中心学校 周春兰.
第一课 计算机基础知识.
河北大学出版社苗逢春主编信息技术初中版第一册第二章第二节
记事本的使用 主讲人 王爱华.
C++中的声音处理 在传统Turbo C环境中,如果想用C语言控制电脑发声,可以用Sound函数。在VC6.6环境中如果想控制电脑发声则采用Beep函数。原型为: Beep(频率,持续时间) , 单位毫秒 暂停程序执行使用Sleep函数 Sleep(持续时间), 单位毫秒 引用这两个函数时,必须包含头文件
在PHP和MYSQL中实现完美的中文显示
走进Word 认识Word2010的工作界面 计算机专业 赵德玲.
尋找世界文明的曙光 美索不達米亞 將地方圖案插入此投影片 選取〔插入〕功能表 〔圖片〕指令 選取〔從檔案〕指令 選取你的標幟圖片檔案
第三章 文本编辑器vi.
走进编程 程序的顺序结构(二).
元素替换法 ——行列式按行(列)展开(推论)
黃印良 本教材引用自 作者:Edward Lee
經 濟 部 廢止營利事業統一發證制度後之商業登記 經濟部商業司 98年2-3月.
第一单元 初识C程序与C程序开发平台搭建 ---观其大略
第六章 中文处理.
第四章 附件 (应用程序软件包).
用event class 从input的root文件中,由DmpDataBuffer::ReadObject读取数据的问题
第一节 大数定律 一、问题的引入 二、基本定理 三、典型例题 四、小结.
第三冊第十四課記承天夜遊 王永榮 將地方圖案插入此投影片 選取〔插入〕功能表 〔圖片〕指令 選取〔從檔案〕指令 選取你的標幟圖片檔案
第二章 登录UNIX操作系统.
线 性 代 数 厦门大学线性代数教学组 2019年4月24日6时8分 / 45.
基于UNIX操作系统的 编程技术 电子科技大学计算机学院 刘玓 联系方式:
姚金宇 MIT SCHEME 使用说明 姚金宇
Logo语言. Logo语言 视图窗口 小海龟 ?: 提示符 l: 光标 命令窗口.
正则表达式 一、基本定义及组成 组成:一个完整的表达式由字符簇,限定符,定位符等组成。
C语言程序设计 第一章 数据类型, 运算符与表达式 第二章 顺序程序设计 第三章 选择结构程序设计 第四章 循环控制 第五章 数组.
项目二:HTML语言基础.
第4章 Excel电子表格制作软件 4.4 函数(一).
iSIGHT 基本培训 使用 Excel的栅栏问题
3.16 枚举算法及其程序实现 ——数组的作用.
第六章 素材的加工与处理 第13讲 用GoldWave进行音频的截取、合并、淡入淡出操作
C++语言程序设计 C++语言程序设计 第二章 基本数据类型与表达式 第十一组 C++语言程序设计.
本节内容 文件系统 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
雷锦江 Edwin Guide 雷锦江
第五章 编辑程序vi 概述 1. 编辑器的基本工作流程: 内 存 编 辑 缓 "窗口" 冲 区 磁盘 文件系统 ②编辑文件
VRP教程 2011.
工业机器人知识要点解析 (ABB机器人) 主讲人:王老师
第肆部份 Excel 試算表處理系統 Excel 試算表處理系統可用來製作如薪資表、銷貨表、電話簿之類的表格資料,表格除了可展示一般性的資料外,也可用來做數字性的資料的計算和分析,也可用來繪製圖表。 聯合.盧坤勇.
第8章 创建与使用图块 将一个或多个单一的实体对象整合为一个对象,这个对象就是图块。图块中的各实体可以具有各自的图层、线性、颜色等特征。在应用时,图块作为一个独立的、完整的对象进行操作,可以根据需要按一定比例和角度将图块插入到需要的位置。 2019/6/30.
05 债务重组.
第四章 UNIX文件系统.
RefWorks使用指南 归档、管理个人参考文献.
考察点:switch\while\for System.in\Scanner char vs int
Presentation transcript:

vi工作方式 命令状态:键盘输入解释为命令 vi一启动就进入命令方式,键盘输入解释为命令 一般按键无回显 以冒号可以引入ex命令和查找命令 编辑命令 i a 等,可以从命令状态转到文本状态

正文插入 命令 i 命令 a 命令 o 命令 O 在当前字符前插入正文段,直至按Esc键(insert) 在当前字符后插入正文段,直至按Esc键(append) 命令 o 在当前行后插入正文段,直至按Esc键(open) 命令 O 在当前行前插入正文段,直至按Esc键(open)

光标单字符移动 单字符移动(四个字母键盘上相邻的按键) 命令前加一整数,表示这个命令连续执行多少遍 h 光标左移一列 j 光标下移一行 k 光标上移一行 l 光标右移一列 有的终端可以直接使用键盘上的方向键代替这四个字母 命令前加一整数,表示这个命令连续执行多少遍 5h 光标左移5列 6j 光标下移6行 23k 光标上移23行 10l 光标右移10列 注意:在vi命令状态下的按键命令没有回显

翻页 命令 注意 Ctrl-b 向后翻页(Backward) Ctrl-f 向前翻页(Forward) Ctrl-u 向上翻半页(Up) Ctrl-d 向下翻半页(Down) 注意 vi把文件尾方向定义为向前,文件头方向定义为向后 有的键盘用PgDn键代替Ctrl-f,用PgUp键代替Ctrl-b 也可以使用下面的命令 6Ctrl-f 向前翻6页 15Ctrl-b 向后翻15页

光标行内快速移动 行尾行首 移动一个单词 wb与WB区别:对“单词”分界符的定义不同 将光标移至当前行首 ^ 将光标移至当前行尾 $ 将光标移至当前行首 ^ 将光标移至当前行尾 $ 移动一个单词 移到右一个单词 w W 移到左一个单词 b B 也可以使用6w 3W 5b 10B命令 wb与WB区别:对“单词”分界符的定义不同 wb命令:非字母,数字,下划线之外的字符 WB命令:仅以空白符(空格/制表符/回车)

光标移动到指定行 移到指定的行 在描述行号时可以使用 括号配对 % :476 将光标定位于第476行 :1 将光标定位于第1行(文件首) :1 将光标定位于第1行(文件首) :$  将光标定位于文件尾 :$-10将光标定位于文件倒数第10行 在描述行号时可以使用 圆点(.)代表当前行号, $ 代表最后一行的行号 括号配对 % 把光标移到一个花括号(或圆括号,或方括号)上,按%键,则光标自动定位到与它配对的那一个括号

删除命令和剪贴板 注:被删除的内容进入剪贴版 删除字符 删除行 删除块 复制到剪贴板yank(不删除,只拷贝到剪贴板) 删除当前字符的命令 x 命令5x删除从当前光标开始的5个字符 删除行 删除当前行的命令 dd 命令3dd删除从当前行开始的3行 删除块 删除到配对括号命令:将光标定位在括号上 d% 复制到剪贴板yank(不删除,只拷贝到剪贴板) yy与y% paste取出剪贴板中内容 p

字符替换 替换光标处字符 r 替换若干字符 R ra命令将当前光标处字符替换为a 将当前光标处开始的三个字符依次替换为abc,则需要按命令rarbrc 替换若干字符 R 例:命令Rabcdef,然后按Esc键 该命令把从当前光标开始的字符依次替换为abcdef,用Esc来结束多字符替换命令

取消和重复 取消上一次的编辑操作(undo) u 重复上一次的编辑操作 . 如:误删了一段正文,用u命令可撤销删除 如:把文件中的所有abc字符串替换成xyz字符串, 用u命令可撤销替换 重复上一次的编辑操作 . 按圆点键,可以重复上一次的编辑操作 例如:按3dd命令删除了三行,然后按圆点键就再删除三行,接着连续按圆点键,每按一次删三行

文件操作命令 存盘退出 存盘不退出 不存盘退出 读入文件xyz.c插入到当前行之下 写文件,把第50行至文件尾的内容写到文件file1中 ZZ :wq<CR> 存盘不退出 :w<CR> 不存盘退出 :q!<CR> 读入文件xyz.c插入到当前行之下 :r xyz.c<CR> 写文件,把第50行至文件尾的内容写到文件file1中 :50,$w file1<CR> :50,$w! file1<CR> 强制覆盖

块操作 删除,并拷贝到剪贴板 不删除,拷贝到剪贴板 复制 移动 :10,50d<CR> 删除第10-50行 :10,50y<CR> 复制 :5,10co56<CR>复制第5-10行到第56行之下 移动 :8,34m78<CR>移动第8-34行到第78行之下

行合并、刷屏和状态显示 两行合并(Join) J 刷新屏幕显示(load) Ctrl-l 状态显示 Ctrl-g 当前行下面的行合并到当前行 在屏幕最下面一行列出正在编辑的文件的名字,总行数,当前行号,文件是否被修改过等信息

模式查找 用“正则表达式”来描述一个字符串模式 查找命令 继续查找命令 格式 /pattern 例: /[0-9][0-9]* 例: /[0-9][0-9]* 继续查找命令 n 向下查找下一个next N 向上查找下一个 循环式搜索

模式替换(1) 替换命令 (substitution) 格式 :n1,n2s/pattern/string/g 例 :1,50s/abc/xyz/ :1,50s/abc/xyz/g :50,80s/^// 第50-75行右移4列 :50,80s/^// 第50-75行左移4列 :1,$s/ *$// 消除尾部多余的空格 :1,$s/a[i]/b[j]/g 不能把a[i]替换为b[j] :1,$/a*b/x+y/g

模式替换(2) 替换字符串中字符&代表被模式所匹配的那部分 例 设文件当前只含有2行,每行为一个整数,内容为 例 设文件当前只含有2行,每行为一个整数,内容为 5 6 10 执行命令 :1,$s/[0-9][0-9]*/192.168.24.& host&/ 192.168.24.5 host5 192.168.24.6 host6 192.168.24.10 host10

模式替换中的转义符 尤其是编辑C语言源程序时需要 将a[i]*b[j]替换为x[k]*y[n]的命令 :1,$s/a\[i]\*b\[j]/x[k]*y[n]/g 将buf.len/1000替为buffer.size/1024的命令 :1,$s/buf\.len\/1000/buffer.size\/1024/g 模式串和替换字符串中的斜线前加转义符\以区别于替换命令格式中所必须的斜线 将*pointer替换为&record :1,$s/\*pointer/\&record/g

更灵活的替换(1) 模式描述中增加\(和\) 例 替换字符串中的 \0 \1 \2 …… 在正则表达式中圆括号,仍然代表它自身 在正则表达式中出现的\(和\)不影响匹配操作 例 [a-zA-Z_][a-zA-Z0-9_]*->number \([a-zA-Z_][a-zA-Z0-9_]*\)->number 替换字符串中的 \0 \1 \2 ……

更灵活的替换(2) 将“变量名->number”替换为“变量名->num” 将日期格式“月-日-年”改为“年.月.日”, :1,$s/\([a-zA-Z_][a-zA-Z0-9_]*\)->number/\1->num/g 将日期格式“月-日-年”改为“年.月.日”, 比如:将 04-26-1997替换为1997.04.26使用命令: :1,$s/\([0-9][0-9]\)-\([0-9][0-9]\)-\([0-9][0-9]*\)/\3.\1.\2/g 替换字符串中的&可以用\0代替 :1,$s/[0-9][0-9]*/192.168.24.& host&/ 也可以用 :1,$s/[0-9][0-9]*/192.168.24.\0 host\0/