Linux shell:全面解析vi编辑器命令
需积分: 3 127 浏览量
更新于2024-09-30
收藏 11KB TXT 举报
"这篇文档是关于Linux环境下使用vi编辑器的命令大全,涵盖了打开、编辑、定位、查找、替换、显示、撤销等多个方面,旨在帮助用户全面掌握vi的使用技巧。"
在Linux操作系统中,vi(Visual Editor)是一个非常重要的文本编辑器,它允许用户在终端上对文件进行编辑。本篇内容主要介绍了以下vi命令:
1. **打开文件**:
- `vi filename`:打开指定的文件进行编辑,如果文件不存在,则创建新文件。
- `vi file1 file2 file3`:一次性打开多个文件,通过`:n`命令在它们之间切换。
- `vi +#filename`:跳转到文件的指定行号开始编辑。
- `vi +/thefindstring filename`:从包含指定字符串的行开始编辑。
2. **移动与浏览**:
- `h`、`j`、`k`、`l`:分别向左、下、上、右移动光标。
- `0`、`(`、`)`、`^`、`$`:快速定位到行首、行尾、当前单词的开头、单词结尾和行的最后一个非空字符。
- `G`:移动到文件末尾,`#G`移动到第#行。
- `##`、`G`:向上或向下移动多行,例如`42G`移动到第42行。
3. **编辑操作**:
- `w`、`e`、`b`:向前移动到下一个单词的开头、单词的结尾或前一个单词的开头。
- `-`、`+`:向前或向后移动一个字符。
- `12|`:将光标移动到当前行的第12列。
- `L`、`M`、`H`:移动到屏幕的最后一行、中间行或第一行。
4. **复制与删除**:
- `dd`:删除当前行。
- `#dd`:删除当前行及其下面的#行。
- `dw`:删除从当前光标位置到单词结尾的所有字符。
- `#dw`:删除#个单词。
- `x`:删除当前光标下的字符。
- `#x`:删除#个字符。
- `D`:删除当前光标至行尾的所有字符。
5. **撤销与重做**:
- `u`:撤销最近一次的编辑操作。
- `#u`:撤销#次编辑操作。
- `U`:撤销对当前行的所有修改。
- `.`:重做上次的编辑操作。
- `redo`:在某些系统中,可以使用`redo`恢复撤销的操作。
6. **查找与替换**:
- `/word`:向前查找单词"word"。
- `?word`:向后查找单词"word"。
- `n`:重复上一次查找操作。
- `:s/old/new/g`:替换当前行所有"old"为"new"。
- `:1,$s/old/new/g`:替换文件中所有"old"为"new"。
7. **显示设置**:
- `:set number`:显示行号。
- `:set nonumber`:取消显示行号。
- `:set showmode`:显示当前的编辑模式。
- `:set list`:显示特殊字符,如制表符和行尾。
- `:set wrapmargin=value`:设置自动换行的边界。
8. **其他功能**:
- `Ctrl+D`、`Ctrl+U`、`Ctrl+F`、`Ctrl+B`:分别用于向前翻页、向后翻页、向下滚动一行和向上滚动一行。
- `:set autoindent`、`:set tabstop=value`等:调整编辑器的自动缩进、制表符宽度等设置。
了解并熟练掌握这些vi命令,将大大提高你在Linux系统中的文本编辑效率。虽然vi编辑器的命令繁多,但一旦习惯,你会发现它是一个极其强大且高效的工具。
2011-11-04 上传
2009-06-10 上传
2022-09-23 上传
2011-07-18 上传
2011-08-26 上传
2020-09-15 上传
2021-09-27 上传
czwskk
- 粉丝: 0
- 资源: 2
最新资源
- 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算法及互相关性能优化指南