【 tulaoshi.com - Linux 】
                             
                             ◎EX COMMANDS 
 以下的命令属於ex编辑器所用.也就是说要在vi执行时需要先换成ex mode (:) 
 vi/ex mode切换 於ex mode输入vi 即可.  
 ! shell command 执行shell命令 
 " 解  
 # 数字 显示选择的行数,每行前面标示出行号. 
 * buffer_name 执行该buffer 
 [行数]a! 在该行的下一行,产生输入的文字. 行数从 0 开始. 
 :1a! (在第二(1+1=2)行产生输入文字) 
 接着会出现如下的讯息 
 Entering ex input mode 
 接着您就可以输入文字 按 ctrl+c 结束 
 [行数]c! 该行用输入的文字取代. 行数从1开始. 
 :1c! (在第一行产生取代文字) 接着会出现如下的讯息 
 Entering ex input mode 
 接着您就可以输入文字取代 按 ctrl+c 结束  
 [行数围]d 将处於该行数围内的文章删除. 
 1,3d (表示从第1行到第3行删除; ,表示到的意思)  
 [Ee]dit! file_name 
 [Ee]x! file_name 编辑不同的档案,此为编辑file_name,[]表示其中之一。 
 也可以用 :e file_name 或 :edit file_name 编辑不同档案 
 exu[sage] [ex命令] 显示该ex命令的使用方式。 
 显示edit的使用方式 :exu edit 显示结果如下 
 +-+-+-+-+-+-+-+-+-+ 
 command begin editing another file 
 Usage:[Ee][dit][!] [+cmd] [file] 
 Press any key to continue [: to enter more ex commands]: 
 分别显示出 简易叙述 使用语法 结束或继续  
 f[ile] [file_name] 显示档案讯息 ( 与vi命令中的ctrl+g类似 ) 
 [range] g[lobal] /样式/ [ex命令] 将符合条件的样式加以用ex命令处理 
 可以设定围,若没有围设定表示全部。 
 若不加命令只会显示符合样式的内容。 
 如 :g/BSD/ (显示有BSD的行列)  
 [range] v[lobal] /样式/ [ex命令] 将不符合条件的样式加以用ex命令处理 
 可以设定围,若没有围设定表示全部。 
 若不加命令只会显示不符合样式的内容。 
 如 :g/BSD/ (显示没有BSD的行列) 
 he[lp] 显示求助讯息 
 [行数]i[nsert]! 将所输入的文字内容,插入自订的行数.原行数顺延 
 [行数]j[oin]! 将该指定行与下一行合。  
 [行数]l[ist] 显示该指定行(围)。  
 [围]m[ove] line 将某围的内容搬移到某自订行之後。 
 若将3-5行搬移到第6行之後,指令为:3,5m6  
 mk[exrc][!] file_name 将缩写、编辑参数及map写到file_name  
 [Nn][ext][!] [file ...] 继续编辑某一档案。  
 pre[serve] 以ex -r 能够恢复的形式储存档案。  
 [Pp]rev[ious][!] 编辑先前的档案。 
 [围] p[rint] 显示围内容 
 [行数] pu[t] 将buffer中的内容在特定行贴上。 
 q[uit][!] 强制离开 
 rec[over] file 回复先前用pre储存的档案,等同於vi -r filename 
 :档案放在/var/tmp/vi.recover资料夹下 
 se[t] 设定环境变数,後接想要设定的变数(值) 
 se[t] [all] 显示全部环境变数 
 sh[ell] 跳脱编辑,回到shell下,可执行其他动作。 
 用exit离开shell。 
 so[urce] file 从档案中读取命令 
 [range] s[ubstitute] [/被取代的样式/取代样式/] 
 在某围内将符合的样式用取代样式取代。  
 su[spend][!] 暂停程式进行,回到shell,用fg回复 
 st[op][!] 同su! 
 ve[rsion] 显示vi编辑器的版本。 
 vi[sual] 进入vi (ex mode用) 
 viu[sage] [command] 显示vi command的语法,若没有特别指定,则显示全部。 
 [围] w[rite][!] [>