6. vi 编辑器的使用 vi 是标准的 Linux 文本编辑程序 不是基于窗口的 多用途编辑程序,可以再各种终端上编辑各式各样的文件 多种系统上都可以使用,比如 Solaris、AIX、HP-UNIX、RedHat 等操作系统上都可以使用6.1 vi finename
如果 filename 已经存在,vi 会打开现存的文件 如果 filename 不存在(尚未创建),vi 会创建名为 filename 的文件。 filename 如果包含路径,则 filename 还有当前路径和相对路径区分,如果不包含路径则 会在当前路径下创建该文件。6.2 vi 的三种模式6.2.1 输入模式:输入文本(编辑模式) 运行 vi 编辑器时,通常首先进入的是命令模式,可以键入如下命令使编辑器进入输入模式: I 在命令模式下输入 I,可在行首插入文本 i 在命令模式下输入 i,可在光标的左边插入文本 A 输入 A 可在一行的结尾处添加文本 a 输入 a 可在光标的右边处插入文本 O 在���前光标位置上面打开一行并提示输入 o 在当前光标位置下面打开一行并提示输入 u 撤销前一个命令:在最后一个命令之后立即输入 u 可以撤销该命令的操作,比如撤销输入 . 重复执行某个命令 U 可以使用 U 来撤销你对一行所做的所有更改 注意:仅当你尚未将光标移动到您所编辑的行以外的地方时,才可以使用 U 命令进行撤销 使用方法:当你在vi输入模式下输入一行后,如果你想撤销该输入,请在输入后保持光标在在该行(千万不要移动到该行以外再移回来,那样做也是无用功),然后按 Esc 键将vi编辑器的输入模式切换到命令模式,然后再按 U 撤销该行的输入。6.2.2命令模式:执行命令 当 vi 编辑器处于输入模式下时,按键盘上的 Esc 键可以进入命令模式 在命令模式下,可以输入命令来执行各种多种功能,大多数 vi 命令都是由一个或两个字母 加上一个可选数字组成。 以下是以冒号开头的命令 :w +回车 保存不退出 :wq +回车 保存并退出 :x +回车 保存并退出(强制) :q! +回车 不保存退出 :q! +回车 不保存退出(强制) 在非输入模式(编辑模式)下,如何在文件中移动光标: h: 向左移动一个字符 l: 向右移动一个字符 j: 向下移动一行 k: 向上移动一行 这四个键一般不推荐使用,推荐使用键盘上的上、下、左、右箭头 ^:(Shift+6)移动到当前行的开头处 $:(Shift+4)移动到当前行的末尾处 H: 使光标移动到屏幕的顶部 M: 使光标移动到屏幕的中部 L: 使光标移动到屏幕的底部 G: 使光标移动到文件的尾部 Page Up: 向上翻页一屏 Page Down:向下翻页半屏 x:删除一个字符 dd:删除一行 ndd: (n 为行数)删除 n 行 yy:复制一行 p:粘贴 x/dd/ndd+p:移动文本内容:使用 x/dd/ndd 先将要移动的内容删除,然后再按 p 粘贴即可 :r filename 复制指定文件 filename 的内容 使用方法:在要插入文本的地方(光标处)输入 :r filename + 回车即可。 /: 查找字符串 使用方法:输入/,并在/后面输入要查找的字符串,然后按回车即可查找输入的字符串 /str_to_find + 回车 输入 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/gc 加入c选项可在执行上面的:%s/old/new/g操作时询问用户确认每个替换操作
设置 vi
:set nu 设置行标(行号)
:set nonu 取消行号显示
:set showmode 设置显示用户模式
:set readonly 设置文件只读
末行模式:执行特定命令
转载请注明出处
http://blog.csdn.net/xiangsir/article/details/8570508