vi/vim使用指北 ---- Introducting the ex Editor
本章介绍ex编辑器,为什么要介绍这样一个新的编辑器呢:其实ex编辑器不能算是一个新的编辑器,vi只是它的visual model,它已经是一个更普遍,基于行的编辑器。ex提供更大机动和范围的编辑命令。使用ex,有很多方式更简单的切换文件和转移文件内容,更快的编辑比一个屏幕更大的文本块。
打开文件
ex file ---- 使用ex打开一个文件,不会显示文件内容。显示一行文件状态,一行命令标志
显示文件内容
[number]-[p] ---- 现实第几行的内容,p可以省略
[number]-,-[number] ---- 显示第几行到第几行的内容
替换
s/[fromCharacter]/[toChracter] --- 从当前行替换
切换到vi模式
vi ----切换到vi模式
在vi模式下移动光标
[number] ---- 移动光标到第几行
编辑命令
[number],[number]d ---- 删除从第几行到第几行的内容
[number],[number]m[number] ---- 把第几行到第几行的内容移动到第几行下面
[number],[number]co/t[number] ---- [co或者t]把第几行到第几行的内容复制到第几行下面
set nu[mber] ----- 显示行号
set nonu[mber] ---- 不显示行号
[number],[number]# ---- 临时现实第几行到第几行的行号
= ---- 显示总的行数
.= ---- 显示当前行号
/pattern/= ---- 显示以一个匹配项所在的行号
. ---- 表示当前行行号
$ ---- 表示最后一行行号,例如20,.m$表示把第20行到当前行的内容移动到文件的末尾
% ---- 表示所有行,例如%d表示删除所有行
+[number] ---- 表示向下多少行,number没有表示+1,例如.,.+20d表示删除从当前向下的20行的内容
-[number] ---- 表示向上多少行,number没有表示-1,例如226,$m.-2表示把第226行到最后一行的内容移动到当前行的前2行下面
0 --- 表示文件开始
[number1];+[number2] p ---- 显示number1行后的number2行
/pattern/;+[number] p ---- 显示第一个匹配行后[number]行
查找
/pattern/d ---- 删除下一个匹配所在行
/pattern/+d ---- 删除下一个匹配的下一行
/pattern1/,/pattern2/d ---- 删除第一个匹配pattern1的行到第一个匹配pattern2的行的内容
.,/pattern/m/[number] ----- 把当前行到第一个匹配patten的行的内容移动到给定行后面
g/pattern/p --- 查找并显示所有包含pattern的行
!g/pattern/p --- 查找并显示所有不包含pattern的行
[number1],[number2]g/pattern/p ---- 从第number1到第number2行中查找并显示包含pattern的行
命令连接
[command1] | [command2] ---- 连接两个命令,例如1,3d | s/thier/their表示删除1-3行,并在当前行替换
保存
[number1],[number2]w newfile ---- 把第number1到第number2行的内容保存新的文件
[number1],[number2]w >> newfile ---- 把第number1到第number2行的内容添加newfile文件的末尾
文件间的拷贝
[number]/[0]/[$][/pattern/]r filename ---- 把文件filename的内容复制到当前光标/文件开始/文件结尾/第一个包含pattern的行的后面
vi/vim使用指北 ---- Introducting the ex Editor的更多相关文章
- vi/vim使用指北 ---- Learning the vi and Vim Editors 读书 笔记
vi/vim作为liux系统下最强大,最流行的文本编辑器之一.边看<Learning the vi and vim Editor>边学习vim,顺便做写简单的笔记,供以后查询. 没看这本书 ...
- vi/vim使用指北 ---- Beyond the Basic
更多的组合命令 [number]-[command]-[test object] number: 数字 comand: c,d,y (修改,删除,复制) test object: 移动光标的命 ...
- vi/vim使用指北 ---- Moving Around in a Hurry
上一篇文章中,简单列出了一些基本的Vim操作,也列出了很多的光标移动命令,本章主要是有哪些命令可以更快的移动光标. vim的编辑操作,用得最多就是移动光标,对于很少行的文件来说,基本的命令就够用了,但 ...
- vi/vim使用指北 ---- Sample Editing
本篇介绍vim的基础操作,各种编辑模式的切换,光标的移动,删除,撤销/重做,保存,查找等基础命令: 基础操作 编辑文件 vim [options] [file ...] 模式 打开文件后进入vim的 ...
- vim使用指北 ---- Advanced Editing
本节介绍vi和ex的一些高级功能. 配置vi 配置文件.exrc可以保存在你的主目录下,在vi启动的时候执行这个配置文件.但在当前工作目录下可以放置一个配置文件,对当前目录做一个自定义配置. :set ...
- vim使用指北 ---- Multiple Windows in Vim
多窗口打开多个文件 vim -o file1 file2 ... ---- 默认上下分割窗口 vim -0n file1 file2 ... ---- vim默认会上下等分n个窗口 分割窗口 :[v] ...
- vim使用指北 ---- Global Replacement
一般替换 s/old/new --- 替换当前行的第一个匹配项 s/old/new/g ---- 替换当前行所有的匹配项 number1,number2-s/old/new/g ---- 替换从 ...
- 【转载】vi/vim使用进阶: 指随意动,移动如飞 (二)
本节所用命令的帮助入口: :help usr_03.txt :help motion.txt :help usr_29.txt :help scroll.txt :help folding 上一篇文章 ...
- 【转载】vi/vim使用进阶: 指随意动,移动如飞 (一)
vi/vim使用进阶: 指随意动,移动如飞 (一) << 返回vim使用进阶: 目录 本节所用命令的帮助入口: :help usr_03.txt :help motion.txt :hel ...
随机推荐
- 第二节:AppDomain
CLR COM服务器初始化时,会创建一个AppDomain.AppDomain是一组程序集的逻辑容器.CLR初始化时创建的第一个AppDomain称为默认的AppDomain,这个默认的AppDoma ...
- Python2安装说明
1.Python版本 Python 2.x的版本的,被称为Python2:是目前用的最广泛的,比如Python 2.7.12. Python 3.x的版本的,被称为Python3:是最新的版本的,比如 ...
- [terry笔记]Oracle10g/11g安装-redhat5.5
操作系统准备工作 其实真正的进入图形界面安装是简单的,只是前期的配置比较繁琐,如版本.空间.位置.软件包.用户.环境变量.内核参数,这里主要讨论前期配置. 10g与11g的单实例安装基本一样,主要区别 ...
- OpenStack:安装Neutron与provider network
1. 安装(1)Install Networking services on a dedicated network node# apt-get install neutron-server neut ...
- 使用Apriori算法和FP-growth算法进行关联分析
系列文章:<机器学习实战>学习笔记 最近看了<机器学习实战>中的第11章(使用Apriori算法进行关联分析)和第12章(使用FP-growth算法来高效发现频繁项集).正如章 ...
- web relase
http://wenku.baidu.com/link?url=uOAV9QwXGGLjeqt6M1KTqwp0Jbhhguvz9IxExCHNiUlrYMX584Io3ByNJJIkAVzEqzv9 ...
- 未能加载文件或程序集“System.Web.Razor”或它的某一个依赖项。文件或目录损坏且无法读取。
“/”应用程序中的服务器错误. 未能加载文件或程序集“System.Web.Razor”或它的某一个依赖项.文件或目录损坏且无法读取. (异常来自 HRESULT:0x80070570) 说明: 执行 ...
- js 获取随机数
返回 m 到 n 的随机整数 <script type="text/javascript"> function randomNumber(m.n){ return Ma ...
- 设置xx-net,访问youtube等国外网站
配合使用chrome+xx-net,就可以免费访问youtube等外网了.步骤如下: 1. 按照https://github.com/XX-net/XX-Net/wiki/%E4%BD%BF%E7%9 ...
- VC++程序中加入自定义声音(PlaySound函数用法)
VC++编程中,我们可以为自己的程序加入音乐,比如当我们按下一个按钮时或者启动程序时,播放一小段音乐. 该功能用到函数: BOOL PlaySound(LPCSTR pszSound, HMODULE ...