首页 | 资讯动态 | linux基础 | 系统管理 | 网络管理 | 编程开发 | linux数据库 | 服务器技术 | linux相关 | linux认证 | 嵌入式 | 下载中心 | 专题 | linux招聘 | 镜像站
OKLinux中文技术站
·设为首页
·加入收藏
·联系我们
系统管理: 中文环境 系统管理 桌面应用 内核技术 | Linux基础: 基础入门 安装配置 常用命令 经验技巧 软件应用 | Linux数据库: Mysql Postgre Oracle DB2 Sybase other
网络管理: 网络安全 网络应用 Linux服务器 环境配置 黑客安全 | 编程开发: PHP CC++ Python Perl Shell 嵌入式开发 java jsp | PHP技术: PHP基础 PHP技巧 PHP应用 PHP文摘
Linux资讯 Linux招聘 Linux专题 Apache | Linux相关: 硬件相关 Linux解决方案 Linux认证 企业应用 其它Unix | 相关下载: 资料下载 参考手册 开发工具 服务器类 软路由 其它
 技术搜索:
会员中心 注册会员 高级搜索  
  → 当前位置:首页>编程开发>java>Java基础>正文

Java语言常用VI高级命令集锦

http://www.oklinux.cn  2008-01-20  来源: ccidnet baocl  会员收藏  游客收藏  【 】 

VI高级命令集锦



十多年前就背过vi的批量替换的命令,可就是记不牢。这不,今天又要上网查了。不过,今天查到的命令以前没有见过:在vi界面下使用命令 :%s#/usr/bin#/bin#g 可以把文件中所有路径/usr/bin换成/bin。其中“#”是转义字符,表明其后的“/”字符是具有实际意义的字符,不是分隔符。嗯~又学了一招。

以下是一篇比较全的vi命令集:(感谢jaxy,感谢chinaitlab)
------------------------------------------------------------------------

  鉴于大家在使用VI 的时候有一定的生疏,在这里借花献佛,从兄弟版[SHELL]中整理出以下关于VI编程的高级技巧,希望对大家学习UNIX有所帮助,并希望大家能结合使用HPUX的心得体会对这些经验进行进一步的扩展。
  1.交换两个字符位置
  
  xp
  2.上下两行调换
  ddp
  3.把文件内容反转
  :g/^/m0/ (未通过)
  
  4.上下两行合并
  J
  5.删除所有行
  dG
  6.从当前位置删除到行尾
  d$
  7.从当前位置复制到行尾
  y$ 假如要粘贴到其他地方 p 就可以了
  
  
  由于vi 是建立在 EX 上的 所以 当键入 : 时就来到了 EX 命令状态
  8.
  :ab string strings
  例如 ":ab usa United States of America" ,
  当你在文见里插入 usa 时
  United States of America 就蹦出来了
  9.
  :map keys new_seq
  定义你当前 键盘命令
  10.
  :set [all]
  vi or ex 的编辑状态
  如 显示每行 :set nu
  11.
  在命令状态下,nyy表示拷贝从光标行起的下n行内容,p表示paste,可刚复制的内容粘贴在光标处的
  下面。
  
  12.
  单个字符替换用r,覆盖多个字符用R,用多个字符替换一个字符用s,整行替换用S
  
  13.
  
  :%s/old_word/new_word/g
  这个指令是于在整个文件中替换特定字符串
  
  14.光标控制
  
  k:上移 nk 上移n行
  j:下移 nj 下移n行
  
  
  将光标移到第n行,按下 mk
  将光标移到第m行,按下 "ay'k
  即将第n到m的行存到a寄存器,以此类推,b,c........寄存器等
  
  这样就可以将你常用的需要复用的内容粘贴到不同的寄存器中以备用
  
  
  想粘贴到某处,直接将光标移到某地,按下 ‘ap 即可,以此类推,b,c........寄存器等
  
  在当前屏幕中
  H 跳到第一行
  M 跳到中间一行
  L 跳到最后一行
  
  15.
  表8-2 删除命令
  删除命令操作
  d l 删除当前字符(与x命令功能相同)
  d 0 删除到某一行的开始位置
  d ^ 删除到某一行的第一个字符位置(不包括空格或TA B字符)
  d w 删除到某个单词的结尾位置
  d 3 w 删除到第三个单词的结尾位置
  d b 删除到某个单词的开始位置
  d W 删除到某个以空格作为分隔符的单词的结尾位置
  d B 删除到某个以空格作为分隔符的单词的开始位置
  d 7 B 删除到前面7个以空格作为分隔符的单词的开始位置
  d) 删除到某个语句的结尾位置
  d 4) 删除到第四个语句的结尾位置
  d( 删除到某个语句的开始位置
  d } 删除到某个段落的结尾位置
  d { 删除到某个段落的开始位置
  d 7 { 删除到当前段落起始位置之前的第7个段落位置
  d d 删除当前行
  d /t e x t 删除从文本中出现“ t e x t”中所指定字样的位置,一直向前直到下一个该字样所出现的
  位置(但不包括该字样)之间的内容
  d fc 删除从文本中出现字符“c”的位置,一直向前直到下一个该字符所出现的位置(包括
  该字符)之间的内容
  d tc 删除当前行直到下一个字符“ c”所出现位置之间的内容
  D 删除到某一行的结尾
  d $ 删除到某一行的结尾
  5 d d 删除从当前行所开始的5行内容
  d L 删除直到屏幕上最后一行的内容
  d H 删除直到屏幕上第一行的内容
  d G 删除直到工作缓存区结尾的内容
  d 1 G 删除直到工作缓存区开始的内容
  
  修改命令操作
  c l 更改当前字符
  c w 修改到某个单词的结尾位置
  c 3 w 修改到第三个单词的结尾位置
  c b 修改到某个单词的开始位置
  c W 修改到某个以空格作为分隔符的单词的结尾位置
  c B 修改到某个以空格作为分隔符的单词的开始位置
  c 7 B 修改到前面7个以空格作为分隔符的单词的开始位置
  c 0 修改到某行的结尾位置
  c) 修改到某个语句的结尾位置
  c 4) 修改到第四个语句的结尾位置
  c( 修改到某个语句的开始位置
  c } 修改到某个段落的结尾位置
  c { 修改到某个段落的开始位置
  c 7 { 修改到当前段落起始位置之前的第7个段落位置
  c tc 修改当前行直到下一个字符c所出现位置之间的内容
  C 修改到某一行的结尾
  c c 修改当前行
  5 c c 修改从当前行所开始的5行内容
  
  
  .重复上一次修改!
  
  
  表8-4 替换命令
  替换命令操作
  s 将当前字符替换为一个或多个字符
  S 将当前行替换为一个或多个字符
  5 s 将从当前字符开始的5个字符替换为一个或多个字符
  
  
  vi替换使用规则:
  :g/s1/s/s2/s3/g
  第一个g表示对每一个包括s1的行都进行替换,第二个g表示对每一行包括s1的行所有的s2都用s3替换
  s表示替换,s2是要被替换的字符串,他可以和s1相同(假如相同的话用//代替),s3是替换字符串
  
  
  16.
  
  fx
  往右移动到 x 字符上
  Fx
  往左移动到 x 字符上
  tx
  往右移动到 x 字符前
  Tx
  往左移动到 x 字符后
  (注重:以上四个命令中,其中x是键入的字符)
  ;
  分号,配合 f 和 t 使用,重复一次
  ,
  逗号,配合 f 和 t 使用,反方向重复一次

共2页: 上一页 1 [2] 下一页

上一篇:Java语言对象池技术的原理及其实现解析   下一篇:JAVA高级--Java中异常机制的深入研究


收藏于收藏夹】 【评论】 【推荐】 【打印】 【关闭
相关文档
·Java语言对象池技术的原理及其实现解析
·JAVA高级--Java中异常机制的深入研究
·Java进阶--减少对象的创建提高java性能
·一个基于Java Socket实现文件传输示例
·JAVA进阶--使用Java进行Web开发的随想
·Ajax技术:构建动态的Java应用程序分析
·JAVA进阶--根据所涉及对象生成XML文档
·Java基础:编写对GC友好,又不泄漏的代码
·JAVA基础:一个struts hibernate入门实例
·对Map技巧的一点总结:获得Map中的数据
·JAVA进阶--对象的序列化和反序列化实践
·Java进阶-编写跨平台Java程序注意事项
·学习Java用于异常处理的terminate()函数
·使用isInstanceOf()测试程序对象的类型
·Java Interface 是常量存放最佳地点吗?
·JAVA进阶--线程运行栈信息的获取讲解
发表评论
密码: 匿名评论
评论内容:

(不超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规)
 
  最新文档
·Java入门:状态对象--数据库的替代者
·Java语言怎样调用外部应用程序
·Java语言深入--关于Java语言的内存泄漏
·JSP/Servlet/JSF:Servlet/JSP配置详解
·进阶-怎样使用AJAX进行WEB应用程序开发
·基础:J2ME程序开发之新手入门九大要点
·Java入门--Java语言接口与继承的本质
·JAVA进阶--如何提升JSP应用程序的效率
·对Java中四种XML解析技术之不完全测试
·编写高级 JScript应用代码
·JSP/Servlet/JSF--对标签库的深入研究
·Java入门--关于字符串分割的两种方法
  阅读排行
·使用AJAX技术实现网页无闪自动局部刷新
·快速教您Apache Tomcat SSL的配置
·Java语言深入--java调用C/C 的过程
·用JSP JavaScript打造二级级联下拉菜单
·JAVA进阶--线程运行栈信息的获取讲解
·J2SE综合--JAVA实现把汉字转化成拼音
·使用WEBWORK实现文件上传方法实例详解
·一个非常有趣的使用spring框架AOP例子
·关于java中相对路径,绝对路径问题总结
·高级:lucene全文检索应用示例及代码简
·详细讲解Struts构架中action的跳转大全
·Hibernate配置文件中的映射元素详解
·在Weblogic上配置JMS服务的方法
·对Java中四种XML解析技术之不完全测试
·数据库相关:小结Hibernate的查询方式
网摘收藏: