中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 操作系统 > Linux > Linux综合
vi常用命令
作者:未知 时间:2005-09-13 22:05 出处:Blog.ChinaUnix.net 责编:chinaitpower
              摘要:vi常用命令

1、移动光标

H 移到屏幕的左上角

M 移到屏幕的中间行开头

L 移到屏幕的最后一行

[   移到文件开始位置 (双击)

] 移到文件结束位置(双击)

:n        移到文件的第n

Ctrl + b    屏幕上卷一个菜单

Ctrl + F    屏幕下卷一个菜单

h                       将光标左移一格

l                       将光标右移一格

j                       将光标下移一格
k
                      将光标上移一格

w                       将光标移到下一个小字的前面

b                       将光标移到前一个小字的前面

0                       把光标移到当前行的第一个字符处
$
                      把光标移到当前行的最后一个字符处

2、修改内容

nx  删除由光标位置起始的n个字符(含光标位置,按一个x表示删

除光标所在的字符)

ndw   删除光标位置其实的n个字符组(dw删除光标所在的单词)

d0    将行的开始到光标位置的字符全部删除

d$ D    将光标位置起始到行尾的字符全部删除

ndd   将光标位置起始的n行(整行)删除(dd表示删除光标所在行)

:start,endd   删除文件的第startend

rc                      把光符所在字符替换成c

R                       覆盖本行内容

u                       恢复上一次的修改

cw                      改变光标所在单词

C                       改变一行光标位置以后的部分

ccS                  修改一整行

3、寻找替换

/pattern                向后寻找指定的pattern ,若遇到文件尾,则从头再开始。
pattern               向前寻找指定的pattern ,若遇到文件头,则从尾再开始。
n
                      在上次指定的方向上,再次执行

N                       在上次指定的方向的相反方向上,再次执行上次定义的查找

:%s/old/new/g           查找所有old并替换为new

:start,ends/old/new     替换指定区域

4、编辑切换

a                       在光标之后开始输入文本

A                       在行尾开始输入文本

I                       在光标之前开始输入文本

I                       在行首第一个非空白字符前输入文本
o                      
在光标所在行后插入一空行
O                      
在光标所在行前插入一空行

5复制及移动文件

yy                                       把当前行放入缓冲区

yw                                      把光标所在的单词放入缓冲区

p                                        将缓冲区内容取到光标所在行的下面一行
P
                                       将缓冲区内容取到光标所在行的上面一行

:first,last co dest  first last行的数据复制到目标行(dest)下面

:Start,endm deststart end行的数据移动到目标行(dest)

:r filename 将指定文件的内容读入光标所在行下

6、其它

vi        进入vi而不读入任何文件

vi filename    进入vi并读入指定名称的文件(新、旧文件均可)。

vi +n filename    进入vi并且由文件的第几行开始。

vi + filename      进入vi并且由文件的最后一行开始

vi filename(s)                进入vi并且将各指定文件列入名单内,第一个文件先读入

u  取消前一指令

Ctrl + l 刷新屏幕显示

:set nu   显示文件的行号,但不会存文件

:set nonu 解除行号显示

e!                                       重新装入当前文件,若当前文件有改动,则丢弃以前的改动

:sh                                      启动sh ,从sh中返回可用exitctrl+d

:! Command                        执行命令command

!!                                        重新执行上次的:! Command子命令

7、增补

(1)删除多余的回车符:

※vi中执行:g/^Ms///g,其中^M为ctrl+v和ctrl+m组和输入

执行dos2unix filename

执行sed 's/^M//' test.sh > back.sh

关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有