内容发布更新时间 : 2024/12/23 12:25:48星期一 下面是文章的全部内容请认真阅读。
第 4 章 Shell 与 Vi 编辑器
表 4-9 进入插入模式的说明
类型 命令 i I 进入插入模 式 a A o O
说明 从光标所在位置前开始插入文本 该命令是将光标移到当前行的行首,然后在起前插入文本 用于在光标当前所在位置之后追加新文本 将光标移到所在行的行尾,从哪里开始插入新文本 在光标所在行的下面新开一行,并将光标置于该行行首,等待输入 在光标所在行的上面插入一行,并将光标置于该行行首,等待输入 表 4-10 列出了常用的命令模式下的命令。 表 4-10 常用的命令模式说明
类型 跳行 命令 :n :q :wq :q! :w :w file 说明 直接输入要移动到的行号即可实现跳行 退出 Vi 保存退出 Vi 不保存退出 Vi 在光标所在行的下面新开一行,并将光标置于该行行首,等待输入 在光标所在行的上面插入一行,并将光标置于该行行首,等待输入 将从 n1 开始到 n2 结束的行写到 file 文件中 将第 n 行写到 file 文件中 将从第 1 行起到光标当前位置的所有内容写到 file 文件中 将从光标当前位置起到文件结尾的所有内容写到 file 文件中 打开另一个文件 file 新建 file 文件 把当前文件改名为 file 文件 从当前光标开始往右移动到有 str 的地方 从当前光标开始往左移动到有 str 的地方 将包含有 str 的行写到文件 file 中 将从 strl 开始到 str2 结束的内容写入 file 将第 1 个 strl 替换为 str2 将所有的 stri 替换为 st}2 将从 nl 开始到 n2 为止的所有内容复制到 n3 后面 将从 n1 开始到 n2 为止的所有内容移动到 n3 后面 删除当前行 删除从当前行开始的 n 行 删除从 n1 开始到 n2 为止的所有内容 - 90 -
退出 文件相 :nl,n2w file 关 :nw file :l,.w file :.,$w file 文件相 关 :r file :e file :f file :/str/ 字符串 :?str? 搜索、 :/str/w file 替换和 :/str1/,/str2/w file 删除 :s/str1/str2/ :s/str1/str2/g 文本的 :n1,n2 co n3 复制、 :n1,n2 m n3 删除和 :d 移动 :nd :n1,n2 d
:.,$d 第 4 章 Shell 与 Vi 编辑器 删除从当前行到结尾的所有内容
- 91 -
类型 命令 :/str1,/str2/d 第 4 章 Shell 与 Vi 编辑器 说明 删除从 strl 开始到 stl2 为止的所有内容 运行 Shell 命令 Cmd 将 n1 到 n2 行的内容作为 Cmd 命令的输入,如果不指定 n1 和 n2,则将 整个文件的内容作为命令 Cmd 的输入 将命令运行的结果写入当前行位置 执 行 Shell 命 令 :!Cmd :n1,n2 w ! Cmd :r ! Cmd 这些命令看似复杂,其实使用时非常简单。例如删除也带有剪切的意思,当我们删除 文字时,可以把光标移动到某处,然后按 shift+p 键就把内容贴在原处,然后再移动光标到 某处,然后再按 p 或 shift+p 又能贴上。
p shift+p
在光标之后粘贴 在光标之前粘贴
当进行查找和替换时,我们要输入 ESC 键,进入命令模式;我们输入/或?就可以进行 查找了。比如在一个文件中查找 swap 单词,首先按 ESC 键,进入命令模式,然后输入:
/swap 或
?swap
若把光标所在的行,把所有单词 the,替换成 THE,则需:
:s /the/THE/g
仅仅是把第 1 行到第 10 行中的 the,替换成 THE:
:1,10 s /the/THE/g
这些编辑指令非常有弹性,基本上可以说是由指令与范围所构成。而且需要注意的是, 我们采用 PC 的键盘来说明 Vi 的操作,但在具体 的环境中还要参考相应的资料。
- 92 -