下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、linux 命令之 vivi 命令详解vi 命令是 unix 下常用而重要命令,可在全屏幕方式下编辑一个或多个文件。若在vi 执行时没有指定一个文件,那么 vi 命令会自动产生一个无名的空的工作文件。若指定的文件不存在,那么就按指定的文件名创建一个新的文件。若对文件的修改不保存的话,v i 命令并不转变原来文件的内容。留意:vi 命令并不锁住宅编辑的文件,因此多个用户可能在同时编辑一个文件,那么最终保存的文件版本将被保留。下面是 vi 命令使用的一些选项及含义:-c sub-command 在对指定的文件编辑前,先执行指定的命令 sub-command .-r filename 恢复指定的文件
2、 filename .-r 将指定的文件以只读的方式放入编辑器中,这样不会保存对文件的任何修 改。-y number 将编辑窗口的大小设为 number 行。下面是 vi 编辑所处的三种模式:命令模式进入 vi 时所处的模式。在此模式下用户可输入各种子命令对进行*作,如删除行、粘贴行、移向下一个字、移向不同行等。文本输入模式在此模式下可以修改一行的内容并增加新行。在命令模式下键入 a 、i 或c 键可进入文本输入模式,按 escape 键可返回命令模式。命令项模式在此模式下,可以通过子命令输入更多的参数。如:w 子命令要求输入一文件名,”/”子命令要求输入一个查找项。用户使用escape 键返
3、回命令模式。下面是自命令模式下执行的,在同一行上移动的自命令h 将光标左移一格。 l 将光标右移一格。j 将光标下移一格。k 将光标上移一格。w 将光标移到下一个小字的前面。w 将光标移到下一个大字的前面。b 将光标移到前一个小字的前面。b 将光标移到前一个大字的前面。e 将光标移到下一个小字的后面。e 将光标移到前一个大字的后面。fc 把光标移到同一行的下一个c 字符处。fc 把光标移到同一行的前一个c 字符处。tc 把光标移到同一行的下一个字符c 的前一格。tc 把光标移到同一行的前一个字符c 的后一格。number| 把光标移到递 number 列上。下面是命令模式下在行间移动的子命令+
4、或 enter 把光标移至下一行第一个非空白字符。- 把光标移至上一行第一个非空白字符。0 把光标移到当前行的第一个字符处。$ 把光标移到当前行的最终一个字符处。h 把光标移到屏幕最顶端一行。l 把光标移到屏幕最底端一行。m 把光标移到屏幕中间。下面是命令模式下转变屏幕显示的子命令z- 把当前行作为屏幕的最终一行,并重新显示屏幕。z. 把当前行作为屏幕的中间一行,并重新显示屏幕。ctrl+l 重新显示屏幕当前内容。/pattern/z- 查找 pattern 的下一个位置,并把所在行设为屏幕的最终一行。下面是在命令模式下用来显示页面的子命令ctrl + f 向后滚一页。ctrl + d 向后滚
5、半页。ctrl + b 向前滚一页。ctrl + u 向前滚半页。ctrl + e 屏幕向下滚一行。ctrl + y 屏幕项上滚一行。下面是在命令模式下用来查找字符串所使用的子命令/pattern 向后查找指定的 pattern ,若遇到文件尾,则从头再开头。?pattern 向前查找指定的 pattern ,若遇到文件头,则从尾再开头。n 在上次指定的方向上,再次执行上次定义的查找。n 在上次指定的方向的相反方向上,再次执行上次定义的查找。/pattern/+number 将光标停在包含 pattern 的行后面第 number 行上。/pattern/-number 将光标停在包含 pat
6、tern 的行前面第 number 行上。% 移到匹配的”()”或”上。下面是在文本输入模式下用来输入文本的子命令(用户可在任何时候按 escape 返回到命令模式):a 在光标之后开头输入文本。a 在行尾开头输入文本。i 在光标之前开头输入文本。i 在行首第一个非空白字符前输入文本。o 在光标所在行后插入一空行。o 在光标所在行前插入一空行。下面是在命令模式下转变文本所使用的子命令(用户可在任何的时候按 escape 键返回到命令模式):cc 或 s 修改一整行。c 转变一行光标位置以后的部分。cw 转变光标所在单词。dd 删除当前行。d 删除光标所在行光标后面的内容。dw 删除光标所在的单
7、词。j 把下一行内容加到本行行尾。rc 把光符所在字符替换成c .r 掩盖本行内容。u 恢复上一次的修改。x 删除光标所在的字符。 转变光标所在出字符的大小写。. 重复上一个*作。<<把当前行移到左边。>>把当前行移到右边。下面是用于文件中拷贝文本的字命令p 将缓冲区内容取到光标所在行的下面一行。p 将缓冲区内容取到光标所在行的上面一行。”bd 将文本删除至出名缓冲区b .”bp 张贴出名缓冲区b 中内容。yy 把当前行放入缓冲区。y 把当前行放入缓冲区。yw 把光标所在的单词放入缓冲区。下面是用于保存文件的子命令:w 回写修改后的文件。:w filename 当 fi
8、lename 不存在时,把修改后的文件存为文件filename ,当文件 filename存在时,报错。!w filename 假如文件 filename 存在时,把修改后的文件保存为文件filename .下面列出了在 vi 编辑的多个文件之间切换所用的子命令:n 开头编辑 vi 激活的文件列表中的下一个文件。:n filenames 指定将被编辑的新的文件列表。下面列出了用于在当前文件和另外一个文件间切换的子命令::e filename 使用 filename 激活 vi (在 vi 中装入另一个文件 filename)。 e!重新装入当前文件,若当前文件有改动,则丢弃以前的改动。:e+f
9、ilename 使用 filename 激活 vi ,并从文件尾部开头编辑。:e+number filename 使用 filename 激活 vi ,并在第 number 行开头编辑。:e# 开头编辑另外一个文件。下面是在本文件中加入其他文件代码所使用的子命令::r filename 读取 filename 文件,并将其内容加到当前文件后。:r ! command 执行 command 文件,并将其输出加到当前文件后。下面是 vi 中其他的子命令ctrl+g 取得正在编辑文件的有关信息。:sh 启动 sh ,从 sh 中返回可用 exit 或 ctrl+d .:! command 执行命令
10、command .!重新执行上次的:! command 子命令。:q 退出 vi ,若用户对编辑的文件有所修改,系统不会让用户使用q 命令退出。:q!退出 vi 而不管是否对文件有改动。zz 或:wq 保存对文件的修改并退出 vi .用户可在一个特殊的文件.exrc 中定义特殊的 vi 命令。在 vi 中使用这些命令时,必需在该命令前加上一个冒号( :) 。-vi 的模式vi 是在很久以前就写的程序。在那个时候,键盘上没有现在生疏的那么多功能键。所以,vi 设计成通过输入字符和 esc 来把握输入和修改文本。可能这对于一些人来说是个圆满,但是你会发觉你不需要转变手在键盘上的位置就可以完成全部的
11、功能。结果是你的输入将快速起来。为了完成交互的全屏幕编辑工作, vi 有三种模式。插入模式 (insert) 用于输入文本。在插入模式下,你输入的任何字符都将显示在屏幕并存于文件。命令 (command) 模式用于大多数编辑功能。在命令模式下,全部的输入都将产生肯定的响应而不是直接到文本中,例如移动光标、删除一块文本、拷贝文本等。第三个模式是执行另 外的功能,例如查找、全局替换、处理多个文件等。这种模式是基于 ex 编辑器的。启动 vi当 vi 启动后,默认的模式是命令模式。依据下面的步骤试一试:输入程序名称启动 vi :$ vi你将看到类似下面的东西:empty buffer i插入现在我们
12、输入 “i” 进入插入模式。字符 “i” 将不会回显。此后你输入的任何东西都将显示在缓存中。现在我们来输入一段文字。 例子中的话来自英文版的孙子兵法。留意光标的位置在例子中是个下划 线。if wise, a commander is able to recognize changing circumstances and toact expediently. if sincere, his men will have no doubt of the certainty ofrewards and punishments. if humane, he loves mankind, sympath
13、izes with others,and appreciates their industry and toil. if courageous, he gains victory byseizing opportunity without hesitation. if strict, his troops are disciplinedbecause they are in awe of him and are afraid of punishment. shen pao-hsu said: if a general is not courageous he will be unableto
14、conquer doubts or to create great plans. esccancel当你输入完了,按下 esc 键返回到命令模式。 (假如你已经处于命令模式下,按 esc 时会听到喇叭的声音。) esc 可以撤消未完成的命令和终止插入模式。按 esc 后,光标将停留在你最终输入的字符的下面。很不幸,没有一个明显的标志表明你现在处于什么模式下。但是有简洁的方 法来告知你现在你所处的模式。假如你按下键,相应的字符消灭在屏幕上,那么 你是在插入模式下,否则是命令模式下。假如你不能确定你现在所处的模式,那么 按 esc 两次以听到喇叭声来确信你在命令模式下。移动光标和简洁的编辑是看一看
15、基本的移动光标命令的时候了。训练训练你的手指,让他们以后自动的执行你所想的命令吧。最重要的移动命令让我们来看看有多少影响光标移动的命令。hh光标左移首先,按 5 下 h 让光标左移动 5 个 (假如你看到 h 跑到屏幕上了的话,肯定是你遗忘了按 esc )。光标现在应当在 “plans” 中的 “p” 下面 (看下面的例子):if wise, a commander is able to recognize changing circumstances and toact expediently. if sincere, his men will have no doubt of the ce
16、rtainty ofrewards and punishments. if humane, he loves mankind, sympathizes with others,and appreciates their industry and toil. if courageous, he gains victory byseizing opportunity without hesitation. if strict, his troops are disciplinedbecause they are in awe of him and are afraid of punishment.
17、 shen pao-hsu said: if a general is not courageous he will be unableto conquer doubts or to create great plans. kk光标上移现在我们来按 5 次 k 让光标上移 5 行。或许你该认为应当有快捷方式了。好,现在就有个简洁的方法:在你要实行的 行动前加上数字。按下 5k 你可以和按 5 下 k 有相同的结果了。光标现在该在 “he” 的”e”下了。if wise, a commander is able to recognize changing circumstances and to
18、act expediently. if sincere, his men will have no doubt of the certainty ofrewards and punishments. if humane, he loves mankind, sympathizes with others,and appreciates their industry and toil. if courageous, he gains victory byseizing opportunity without hesitation. if strict, his troops are disciplinedbecause they are in awe of him and are afraid of punishment. shen pao-hsu said: if a general is not courageous he will be unableto conquer doubts or to create great plans.在使用这些功能的时候有些限制的。例如使用 h 或 l 移动光标超过了一行文字的头或尾,光标将停留在头或尾部,喇叭鸣叫提示 你。还有其他的类似 h 和 k 的吗?看一看表 3.2。最好的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025土地流转合同范文
- 养猪产业链一体化2025年度合作协议模板3篇
- 2025城市综合体物业租赁合同
- 2025服务合同香港及境外股市投资咨询服务协议
- 2025年度农村房屋产权转让及配套设施移交合同2篇
- 二零二五年度企业培训与发展公司管理服务协议3篇
- 二零二五年度农副产品电商平台入驻合作协议3篇
- 2025年度智能化公厕建设与运营管理承包施工合同书模板3篇
- 二零二五农村宅基地买卖与农村土地整治与生态保护合同
- 二零二五年度农民工工资支付委托及劳务合同管理协议
- 穴位贴敷护理培训
- 腰椎间盘突出症护理查房课件
- DB45T 2866-2024 灵芝菌种制备技术规程
- 2024年度区块链软件产品知识产权共享协议3篇
- 人教版九年级上学期物理期末复习(压轴60题28大考点)
- 人教版(2024版)七年级上册英语期末模拟测试卷(含答案)
- 2024年度企业环境、社会及治理(ESG)咨询合同6篇
- 幼儿园中班美术活动《美丽的线条》课件
- 2024年01月22474旅游工作者素质修养期末试题答案
- 计量经济学知到智慧树章节测试课后答案2024年秋云南财经大学
- 乡镇卫生院院长工作职责
评论
0/150
提交评论