Linux vi编辑器完全指南
需积分: 1 61 浏览量
更新于2024-09-13
收藏 11KB TXT 举报
"这篇文档是关于Linux环境下使用vi编辑器的命令大全,涵盖了从打开、编辑到保存和退出等一系列操作的全面指南。"
在Linux操作系统中,vi(Visual Editor)是一个强大的文本编辑器,它是Vim(Vi IMproved)的前身。通过掌握vi命令,用户可以高效地进行文件编辑、查找替换、文本操作等工作。以下是一些基本的vi命令:
1. **启动vi**:
- `vi filename`:打开名为filename的文件,如果文件不存在则创建。
- `vi +n filename`:从文件的第n行开始编辑。
- `vi + filename`:从文件末尾开始编辑。
- `vi /pattern filename`:搜索名为filename的文件中包含pattern的行开始编辑。
2. **模式切换**:
- vi有三种模式:命令模式(Command Mode)、插入模式(Insert Mode)和底行模式(Last Line Mode)。
- 在命令模式下,可以通过`i`、`I`、`a`、`A`、`o`、`O`等命令进入插入模式。
- 要回到命令模式,只需按下`ESC`键。
- 底行模式通常用于保存、退出等操作,通过`:`进入。
3. **移动光标**:
- `h`:向左移动一格。
- `l`:向右移动一格。
- `space`:向右移动一格。
- `Backspace`:向左移动一格。
- `k`或`Ctrl+p`:向上移动一行。
- `j`或`Ctrl+n`:向下移动一行。
- `Enter`:向下移动一整行并开始新的一行。
4. **文本选择与删除**:
- `w`、`W`:向前移动到下一个单词的开始。
- `b`、`B`:向后移动到前一个单词的开始。
- `e`、`E`:向前移动到当前单词的结束。
- `(`、`)`:向前移动到下一个句子的开始。
- `{`、`}`:向前移动到下一个段落的开始。
- `nG`:移动到文件的第n行。
- `n+n`:向下移动n行。
- `n-n`:向上移动n行。
- `n$`:移动到当前行的第n列。
5. **复制与粘贴**:
- `yy`:复制当前行。
- `nyy`:复制当前行以下的n行。
- `p`:在当前光标位置下方粘贴。
- `P`:在当前光标位置上方粘贴。
6. **剪切与删除**:
- `dd`:删除当前行。
- `ndd`:删除当前行及以下n行。
- `x`:删除当前字符。
- `X`:删除当前字符的前一个字符。
7. **查找与替换**:
- `/pattern`:向前查找pattern。
- `?pattern`:向后查找pattern。
- `n`:重复上次查找方向。
- `N`:反向重复上次查找。
- `s/p1/p2/g`:替换当前行中的所有p1为p2。
- `n1,n2s/p1/p2/g`:在n1到n2行范围内替换p1为p2。
8. **文件操作**:
- `:w`:保存修改但不退出。
- `:wq`:保存修改并退出。
- `:q`:不保存修改退出。
- `:q!`:不保存修改强制退出。
- `:!command`:执行shell命令。
9. **其他设置**:
- `:term`:查看终端类型。
- `:ignorance`:忽略大小写。
- `:list`:显示制表符和特殊字符。
- `:number`:显示行号。
- `:report`:设置报告的行数。
- `:terse`:简略错误信息。
- `:warn`:在未写入时给出提示。
- `:nomagic`:关闭魔术模式,使得反斜杠(\)不作为转义字符。
- `:nowrapscan`:搜索时不自动跳转到文件开头或结尾。
vi编辑器提供了丰富的功能和自定义选项,熟练掌握这些命令可以显著提高Linux系统下的文本编辑效率。通过不断的实践和练习,你可以成为一个vi编辑器的高手。
2013-02-11 上传
2011-07-18 上传
2011-07-13 上传
2024-05-22 上传
2024-03-21 上传
2013-05-31 上传
2010-10-31 上传
yangxs_cn
- 粉丝: 2
- 资源: 7
最新资源
- 黑板风格计算机毕业答辩PPT模板下载
- CodeSandbox实现ListView快速创建指南
- Node.js脚本实现WXR文件到Postgres数据库帖子导入
- 清新简约创意三角毕业论文答辩PPT模板
- DISCORD-JS-CRUD:提升 Discord 机器人开发体验
- Node.js v4.3.2版本Linux ARM64平台运行时环境发布
- SQLight:C++11编写的轻量级MySQL客户端
- 计算机专业毕业论文答辩PPT模板
- Wireshark网络抓包工具的使用与数据包解析
- Wild Match Map: JavaScript中实现通配符映射与事件绑定
- 毕业答辩利器:蝶恋花毕业设计PPT模板
- Node.js深度解析:高性能Web服务器与实时应用构建
- 掌握深度图技术:游戏开发中的绚丽应用案例
- Dart语言的HTTP扩展包功能详解
- MoonMaker: 投资组合加固神器,助力$GME投资者登月
- 计算机毕业设计答辩PPT模板下载