Linux vi编辑器完全指南
需积分: 1 188 浏览量
更新于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 上传
2008-11-02 上传
2024-05-22 上传
2019-08-11 上传
2012-01-11 上传
2013-05-31 上传
2010-10-31 上传
yangxs_cn
- 粉丝: 2
- 资源: 7
最新资源
- Raspberry Pi OpenCL驱动程序安装与QEMU仿真指南
- Apache RocketMQ Go客户端:全面支持与消息处理功能
- WStage平台:无线传感器网络阶段数据交互技术
- 基于Java SpringBoot和微信小程序的ssm智能仓储系统开发
- CorrectMe项目:自动更正与建议API的开发与应用
- IdeaBiz请求处理程序JAVA:自动化API调用与令牌管理
- 墨西哥面包店研讨会:介绍关键业绩指标(KPI)与评估标准
- 2014年Android音乐播放器源码学习分享
- CleverRecyclerView扩展库:滑动效果与特性增强
- 利用Python和SURF特征识别斑点猫图像
- Wurpr开源PHP MySQL包装器:安全易用且高效
- Scratch少儿编程:Kanon妹系闹钟音效素材包
- 食品分享社交应用的开发教程与功能介绍
- Cookies by lfj.io: 浏览数据智能管理与同步工具
- 掌握SSH框架与SpringMVC Hibernate集成教程
- C语言实现FFT算法及互相关性能优化指南