资源预览内容
第1页 / 共25页
第2页 / 共25页
第3页 / 共25页
第4页 / 共25页
第5页 / 共25页
第6页 / 共25页
第7页 / 共25页
第8页 / 共25页
第9页 / 共25页
第10页 / 共25页
亲,该文档总共25页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
Linux 下 vi 使用手册a :从光标所在位置後面开始新增资料,光标後的资料随新增资料向後移动。 A: 从光标所在列最後面的地方开始新增资料。 插入 (insert) i: 从光标所在位置前面开始插入资料,光标後的资料随新增资料向後移动。 I :从光标所在列的第一个非空白字元前面开始插入资料。 开始 (open) o :在光标所在列下新增一列并进入输入模式。 O: 在光标所在列上方新增一列并进入输入模式。 x: 删除光标所在字符。 dd :删除光标所在的列。 r :修改光标所在字元,r 後接著要修正的字符。 R: 进入取替换状态,新增文字会覆盖原先文字,直到按 ESC 回到指令模式下为止。 s: 删除光标所在字元,并进入输入模式。 S: 删除光标所在的列,并进入输入模式。 文件操作指令多以 : 开头,这跟编辑指令有点区别。 :q 结束编辑(quit) :q! 不存档而要放弃编辑过的文件。 :w 保存文件(write)其後可加所要存档的档名。 :wq 即存档後离开。 zz 功能与 :wq 相同。vi 或 vedit 命令 用途 用全屏显示编辑文件。 语法 vi | vedit -l -R -tTag -v -wNumber -yNumber -r File + | -c Subcommand File . 描述 vi 命令基于基础 ex 编辑器启动全屏编辑器。因此,ex 子命令可以在 vi 编辑器中使用。vedit 命令启动适用于初学者的 vi 编辑器版本。在 vedit 编辑器中,报告选项设置为 1,设置了 showmode 选项和 novice 选项,使其成为一个行编辑器。 通过指定被编辑文件名,可以启动 vi 编辑器。如果在命令行上提供多个 File 参数,vi 编辑器按指定的顺序编辑每一个文件。现有文件的 vi 编辑器在屏幕底部显示文件名、行数和字符数。在多字节语言环境的情况下,字符数必须解释成字节数。 由于 vi 编辑器是全屏编辑器,所以可以逐屏编辑文本。vi 编辑器在编辑缓冲区为编辑的文件制作副本,并且直到保存更改文件内容才会更改。光标在显示屏幕上的位置表明它在文件中的位置,并且子命令在光标位置影响该文件。 vi 编辑器的局限性 以下列表提供了 vi 编辑器的最大限度。这些计数采用单字节字符集。 每行 LINE_MAX 个字符 每全局命令列表 256 个字符 128 个字符在以前被插入和删除的文本中 128 个字符在外壳程序转义命令中 128 个字符在一个字符串值的选项中 30 个字符在一个标记名中 128 个映射宏,总共 2048 个字符 1, 048, 560 行,每行强制不能超过 LINE_MAX 个字符 宏名和宏文本被限制在 100 个字符内。 注: 对大于 64MB 的文件运行 vi 编辑器可能会显示以下的错误信息: 0602-103 file too large to place in /tmp vi 编辑方式 vi 编辑器按以下方式操作: 命令方式 当启动 vi 编辑器时,它处于命令方式。您可以输入任何子命令,除了那些指定仅用于文本输入方式的子命令。当子命令和其它方式结束时,vi 编辑器返回命令方式。按 Esc 键取消子命令。 文 本输入方式 按这种方式使用 vi 编辑器来添加文本。用以下任意子命令进入文本输入方式: a 子命令、A 子命令、 i 子命令、I 子命令、o 子命令、O 子命令、cx 子命令(其中 x 代表子命令的范围) 、C 子命令、s 子命令、S 子命令和 R 子命令。输入这些子命令中的一个后,即可输入文本到编辑缓冲区中。要返回到命令方式,按 ESC 键以正常退出或按“中断” (Ctrl-C 按键顺序)以非正常方式结束。 最后行方式 带前缀 :(冒号) 、/(斜杠) 、?(问号) 、!(感叹号)或 !(两个感叹号)的子命令在屏幕底部的显示行上读取输入。当输入初始字符时,vi 编辑器将光标置于屏幕底部,在该处可以输入命令中剩余的字符。按 Enter 键运行子命令,或按“中断” (Ctrl-C 按键顺序)取消它。当 使用 ! 前缀时,光标只在两个感叹号都输入后才移动。当使用 : 前缀进入最后行方式时,如果在指定计数的命令之前使用以下字符,vi 编辑器赋予它们特定含义: % 所有行,而不管光标的位置 $ 最后行 . 当前行 定制 vi 编辑器 可以根据以下方式定制 vi 编辑器: 设置编辑选项 定义宏 映射键 设置缩写 设置 vi 编辑器选项 以 下列表描述可以使用 set 命令更改的 vi 编辑器选项。这些选项的缺省设置是 off。如果打开了这些开关选项中的一个,在选项之前输入 no 即可重新关闭它。如果想中断 autowrite vi 选项,则输入 noaw,其中 no 关闭选项,aw 指定 autowrite 选项。 注: 当输入 vi 选项时不要包含圆括号。 vi 选项(缩写) 描述 autoindent(ai) 通过使用 shiftwidth 选项指定的制表符停止位之间的间隔,在文本输入方式中自动缩排为前行的缩排格式。缺省是 noai。将光标退回到前面的制表符停止位,按 Ctrl-D 快捷键。这个选项对于全局命令不起作用。 autoprin(ap) 在任何更改编辑缓冲区的命令后面打印当前行。缺省是 ap。这个选项只应用于单行上一系列命令中的最后一个命令,并且对全局命令不起作用。 autowrite(aw) 如果编辑缓冲区自上次 write 子命令以来发生更改,则在 :n 子命令、:ta 子命令、Ctrl-A 按键顺序和 ! 子命令之前,将编辑缓冲区自动写入到文件。缺省是 noaw。 beautifying text(bf) 在文本输入(除了制表符、换行符和换页指示符)的过程中,防止用户在编辑缓冲区中输入控制字符。缺省是 nobf。此选项应用于命令输入。 closepunct(cp= ) 处理结束标点列表,特别当文本自动换行( wraptype 选项)时。在多字符标点前指出字数数,例如 cp=3.;) 。当自动换行时,vi 命令不分割关闭的标点。 directory(dir=) 显示包含编辑缓冲区的目录。缺省为 dir = /var/tmp。 edcompatible( ed) 在多重替换过程中,保留 g(全局)和 c(确认)子命令后缀,并使 r(读取)后缀像 r 子命令一样运作。缺省值是 noed。 exrc(exrc) 如果未设置,则在初始化过程中忽略当前目录下任何 .exrc 文件,除非当前目录是 HOME 环境变量指定的。缺省是 noexrc。 hardtabs(ht= ) 告诉 vi 编辑器显示屏幕上硬件制表符停止位之间的距离。 (这个选项必须与基础的终端或终端仿真器的制表符设置相匹配。 )缺省值为 ht=8。 ignorecase(ic ) 当搜索正则表达式时,忽略大写和小写之间的区别。缺省值是 noic。 linelimit(ll=) 设置最大行数,如 -y 命令行选项。该选项只有和 .exrc 文件或 EXINIT 环境变量一起使用时有效。 lisp(lisp) 除去 ( ), , 和 的特殊意义,并为 s 表达式启用 =(格式打印)运算符,以便能够编辑行处理(LISP)程序。缺省是 nolisp。 list(list) 显示文本和制表符 (I) 和行的标记端($) 。缺省值是 nolist。 magic(magic) 当搜索一种模式时,将 .(句号) 、(左括号)和 *(星号)字符当成特殊字符。在关闭方式中,只有 ( )(圆括号)和 $(美元符)保持特殊意义。但是,可以通过在其它字符前面加上 (反斜杠) 来激活其它字符的特殊意义。缺省是 magic。 mesg(mesg) 如果以可视方式设置,打开终端的写入许可权。该选项只有和 .exrc 文件或 EXINIT 环境变量一起使用时有效。缺省值是 on。 modeline(modeline) 如果在文件开始五行或最后五行找到,则运行 vi 编辑器命令行。一行 vi 编辑器命令可以位于行中的任意位置。为了便于 vi 编辑器能辨认命令行,这一行必须包含一个空格或制表符,后跟 ex: 或 vi: 字符串。命令行以第二个 :(冒号)结束。vi 编辑器尝试将第一个和第二个冒号之间的任意数据解释为 vi 编辑器命令。缺省为 nomodeline。 novice 指明是否处于 novice 方式。不能用 set 命令更改值。 number(nu ) 显示以行号作为前缀的行。缺省是 nonu。 optimize(opt) 加速缺少光标寻址的终端的操作。缺省为 noopt。 paragraphs(para=) 定义开始段落的 vi 宏名。缺省为 para=IPLPPPQPP LIpplpipnpbp。如果指定了一个段落,单字母 nroff 宏,如 .P 宏,必须以加引号字符包含空格。 partialchar(pc=) 出现在最后的显示列,该列中双宽字符不完全显示。缺省字符为 -(减号) 。 prompt 当处于命令方式时,通过打印 :(冒号)提示输入新的编辑器命令。缺省值为 on。 readonly(ro) 设置永久的只读方式。缺省为 noreadonly。 redraw(redraw) 在低能工作站上模仿智能工作站。缺省为 nore。 remap 允许根据其它宏来定义宏。缺省值是 on。 report( re=) 设置在消息显示之前命令能重复的次数。对于产生许多消息的子命令,例如全局子命令,完成命令序列后显示消息。缺省值为 report=5。 scroll(scr=) 设置在编辑器中上下滚动时滚动的行数。缺省值为窗口大小的 1/2,四舍五入。 sections(sect=) 定义开始段落的 vi 宏名。缺省为 sect=NHSHHH HUuhsh+c。如果指定段落,单字母 nroff 宏,如 .P 宏必须以加引号字符包含空格。 shell(sh=) 为 ! 子命令或 :! 子命令定义外壳程序。缺省为登录外壳程序。 shiftwidth(sw=) 为 autoindent 选项、shift 命令( 和 cwMAP 前 面的示例指导 vi 编辑器定位下一个 map 的出现(/map) ,将 map 更改为 MAP( cwMAP) ,结束 change-word 子命令() ,输入命令() 。 注: 为了防止 vi 编辑器解释 Enter 键,当被映射时,必须在前面输入 Ctrl-V 按键顺序。此情况对 Esc、Backspace 和 Delete 键也成立。 要映射控制字符 Ctrl-A、Ctrl-K 和 Ctrl-O,同时按 Ctrl 键和相应的字母。例如,要将 Ctrl-A 按键顺序映射到保存文件和编辑系列中下一个文件命令序列,输入以下命令: :map :w:n 要将映射控制字符 Ctrl-T、Ctrl-W 和 Ctrl-X,必须首先用 Ctrl-V 按键顺序序为它们转义。 要映射 |(管道符) ,首先必须用两个 Ctrl-V 按键顺序为它转义,这通过以下示例说明:将字符 g 映射到命令序列,该命令序列转义到外壳程序,连接文件 /etc/motd 并输出到 wc 命令: :map g :!cat /etc/motd | wc 如果终端允许映射功能键,必须用 #number 按键顺序引用它们,以指定想映射的功能键的号码。在以下示例中,F1 功能键映射到删除单词和将光标下移三个单词的命令序列: :map #1 dwwww 为 了使功能键映射起作用,功能键给终端类型的输出必须和 terminfo 文件中定义的输出相匹配。这些定义由 kfnumber 条目标志,其中
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号