精通vi编辑器:常用命令详解

需积分: 48 3 下载量 65 浏览量 更新于2024-09-07 收藏 17KB DOCX 举报
"这篇资源是关于`vi`编辑器常用命令的全面介绍,涵盖了进入`vi`、保存和退出文件、光标移动、屏幕翻滚等多个方面,旨在帮助用户熟练掌握`vi`编辑器的基本操作。" 在`Linux`环境中,`vi`(Visual Editor)是一个强大的文本编辑器,它具有丰富的功能和高效的命令行操作方式。通过学习和掌握这些基本命令,用户可以在没有图形界面的情况下高效地编辑文本文件。 **进入vi** - `vi filename`:打开或创建名为`filename`的文件,并将光标置于第一行首。 - `vi+nfilename`:打开`filename`,并将光标置于第`n`行首。 - `vi+filename`:打开`filename`,光标位于最后一行首。 - `vi+/pattern filename`:打开`filename`,光标定位到第一个匹配`pattern`的字符串处。 - `vi -r filename`:在上次使用`vi`编辑时发生系统崩溃,可以使用此命令恢复`filename`。 **保存退出** - `w`:保存当前文件但不退出。 - `w /tmp1`:将当前文件另存为`/tmp1`。 - `20,59w /tmp1`:只保存第20行到59行的内容到`/tmp1`。 - `x`或`wq`:保存并退出。 - `q`:退出`vi`,如果文件被修改过,会提示不能退出。 - `q!`:强制退出,不保存任何更改。 - `!command`:执行shell命令`command`。 - `n1, n2w !command`:将文件中n1行至n2行的内容作为`command`的输入并执行。 - `r !command`:将命令`command`的输出替换当前行内容。 - `w !sudo tee %`:如果当前用户无权保存文件,可以使用这个命令获取权限再保存。 **光标移动** - `h`:光标左移一个字符。 - `l`:光标右移一个字符。 - `space`:光标右移一个字符。 - `backspace`:光标左移一个字符。 - `k`或`Ctrl + p`:光标上移一行。 - `j`或`Ctrl + n`:光标下移一行。 - `Enter`:光标下移一行。 - `w`或`W`:光标右移至下一个单词的开头。 - `b`或`B`:光标左移至前一个单词的开头。 - `e`或`E`:光标右移至当前单词的结尾。 - `)`:光标移至句尾。 - `(`:光标移至句首。 - `}`:光标移至段落开头。 - `{`:光标移至段落结尾。 - `nG`:光标移动到第`n`行首。 - `n+`:光标下移`n`行。 - `n-`:光标上移`n`行。 - `n$`:光标移至第`n`行末。 - `H`:光标移到屏幕顶部。 - `M`:光标移到屏幕中间。 - `L`:光标移到屏幕底部。 - `0`:光标移到当前行首。 - `$`:光标移到当前行尾。 **屏幕翻滚** - `Ctrl + u`:向上滚动半屏。 - `Ctrl + d`:向下滚动半屏。 - `Ctrl + f`:向下滚动一屏。 - `Ctrl + b`:向上滚动一屏。 - `nz`:将第`n`行滚动到屏幕顶部,不指定`n`则滚动当前行。 **插入模式** - `i`:在光标前插入文本。 - `I`:在光标所在行的行首插入文本。 - `a`:在光标后插入文本。 - `A`:在当前行的末尾插入文本。 - `o`:在当前行下方插入新行。 - `O`:在当前行上方插入新行。 - `r`:替换当前字符。 - `R`:替换当前字符及其后的字符,直到按下`ESC`键。 **删除操作** - `ndw` 或 `ndW`:从光标处删除`n`个单词。 - `ndd`:删除从光标开始的`n`行。 - `ncwn` 或 `ncW`:修改`n`个单词。 - `nCC`:修改`n`行。 - `s`:从当前光标位置开始,用输入的文本替换字符。 - `S`:删除当前行,并开始输入新内容。 掌握这些基础`vi`命令,用户就可以更高效地在终端中编辑和管理文本文件,尤其在没有图形界面或者网络连接受限的环境下,`vi`的强大功能显得尤为重要。通过不断的练习和实践,可以提高在终端环境中的工作效率。