Linux vi命令详解与使用技巧

需积分: 10 0 下载量 155 浏览量 更新于2024-09-13 收藏 121KB PDF 举报
"vi 命令详解" vi命令是Linux操作系统中的一个强大的文本编辑器,它支持全屏编辑,能够处理单个或多个文件。在使用vi时,如果没有指定文件,vi会创建一个名为匿名的空文件。如果指定的文件不存在,vi将创建一个新的文件。在未保存的情况下退出vi,原始文件内容不会被修改。值得注意的是,vi并不锁定正在编辑的文件,这意味着可能存在多用户同时编辑同一文件的情况,最后保存的版本将会被保留。 vi提供了多个选项来定制其行为: - `-c sub-command`:在打开文件前执行指定的子命令sub-command。 - `-r filename`:恢复文件filename到上次保存的状态。 - `-R`:以只读模式打开文件,不允许保存任何修改。 - `-ynumber`:设置编辑窗口的高度为number行。 vi编辑器有三种工作模式: 1. 命令模式:这是vi启动时默认的模式,用户可以在这个模式下输入各种命令,例如删除、复制、移动光标等。要回到命令模式,可以在文本输入模式下按`Esc`键。 2. 文本输入模式:在这个模式下,用户可以修改当前行的内容或添加新行。在命令模式下按下`a`、`i`或`c`键可以进入此模式,按`Esc`键返回命令模式。 3. 命令行模式:在这个模式下,用户可以输入带有参数的子命令,如`w`命令需要输入保存的文件名,`/`命令需要输入查找项。使用`Esc`键可以返回命令模式。 在命令模式下,有多种移动光标的命令: - `h`:光标左移一格。 - `l`:光标右移一格。 - `j`:光标下移一格。 - `k`:光标上移一格。 - `w`:光标移到下一个单词的前面。 - `W`:光标移到下一个大写字母开头的单词前面。 - `b`:光标移到前一个单词的前面。 - `B`:光标移到前一个大写字母开头的单词前面。 - `e`:光标移到下一个单词的后面。 - `E`:光标移到前一个大写字母开头的单词后面。 - `fc`:光标移到同一行的下一个字符c处。 - `Fc`:光标移到同一行的前一个字符c处。 - `tc`:光标移到同一行的下一个字符c的前一格。 - `Tc`:光标移到同一行的前一个字符c的后一格。 - `number|`:光标移到当前行的第number列。 在行间移动的子命令包括: - `+` 或 `Enter`:光标移到下一行的第一个非空白字符。 - `-`:光标移到上一行的第一个非空白字符。 - `0`:光标移到当前行的第一个字符。 - `$`:光标移到当前行的最后一个字符。 - `H`:光标移到屏幕的顶部。 - `L`:光标移到屏幕的底部。 - `M`:光标移到屏幕的中间。 vi命令模式下还有很多其他操作,比如删除、复制、粘贴、查找替换等,这些都是高效编辑文本的关键。熟练掌握vi命令,能极大地提升Linux系统中的文本处理效率。通过不断实践和学习,你可以成为使用vi的专家。