1.vi使用
三模式:一般模式,插入模式,命令模式

保存和退出vi:

 命令模式下 :w  保存
              :w   新文件  保存到新文件 类似另存为,新文件存在,报错
              :w!  新文件  保存到新文件,新文件存在,覆盖
              :q  不保存退出
              :q! 强制退出,不保存修改
              :wq 保存退出

光标移动:

 插入模式下,方向键可以移动
 一般模式下:方向键
                         0 移动到当前行字符串的行首
                         $ 移动到行尾
                         nw 向右移动n个字符  n数字 ,w 向前forword缩写
                         w 向右移动一个字,单词
                         nb 向左移动n个字符,b 是back的缩写
                         b 向左移动一个字或单词
                         ( 移动到本句的句首,已经在句首则移动到前一句句首
                         ) 移动到下一句句首
                         { 移动到本段段首
                         } 移动到下段段首
                         1G 文件首行行首
                         G 文件末行行首
                         nG 第n行的行首
                         ctrl+g 报告光标的位置

文本删除:

 命令模式下:
                      x 删除光标位置的一个字符
                      nx 删除从光标开始的第n个字符
                      dw 删除光标所在的一个字或单词
                      ndw 删除从光标开始的第n个字或单词
                      db 删除光标前一个字
                      ndb 删除从光标开始的前n个字
                      d0 删除从光标前一个字符到行首所有字符
                      d$ 删除光标所在字符到行尾所有字符
                      dd 删除光标所在的当前行
                      ndd 删除从当前开始的第n行
                      d( 删除从当前字符开始到句首的所有字符
                      d) 删除从当前字符开始到句尾的所有字符
                      d{ 段首
                      d} 段尾

文本查找和替换:

 命令模式下查找:
                     ?String <enter> 要查找的String 回车
                     n 向文件头方向重复上一个查找命令
                     N 向文件尾方向重复上一个查找命令
 命令行模式下替换:
                     s/oldstr/newstr newstr替换旧的oldstr,在光标的当前行,只替换一次
                     s/oldstr/newstr/g            当前行全部替换
                     1,10s/oldstr/newstr/g   替换第1-10行
                     1.$s/oldstr/newstr/g   整个文件替换

文本的复制和粘贴: y yunk    p paste

                     yw 光标所在的字复制到缓冲区
                     nyw 光标开始的第n个字符复制到缓冲区
                     yb 向左复制一个字
                     nyb 向左的第n个字
                     y0 光标的前一个字符到行首的所有字符
                     y$ 光标所在到行末所有字符
                     yy 复制当前行
                     nyy 从当前行开始的第n行
                     p 在光标所在的位置后插入文本
                     P 在光标位置前面插入文本
                     np 在光标后插入文本,复制n次
                     nP 在之前插入文本, 复制n次

Linux Vi的使用的更多相关文章

  1. Linux vi/vim(转载)

    Linux vi/vim 所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在. 但是目前我们使用比较多的是 vim 编辑器. vim 具有程序编辑的能力,可以主 ...

  2. 关于linux vi命令替换的使用说明

    转自:http://os.51cto.com/art/200907/140987.htm vi/vim 中可以使用 :s 命令来替换字符串.以前只会使用一种格式来全文替换,今天发现该命令有很多种写法( ...

  3. linux vi 中按了ctrl+s后没法退出

    linux vi 中按了ctrl+s后无法退出 Linux 中使用vi编辑文件 不小心按了Ctrl + S (习惯了) 结果终端就跟死了一样, 解决办法: Ctrl+Q

  4. linux vi 工具的使用

    linux vi 工具的使用 1.打开文件 vi filename 如果存在该文件,则打开,不存在,则删除 2. 进入vi后,按i建,可以输入内容, 按ESC 在按: ,输入wq保存并退出. 3.移动 ...

  5. linux vi修改后如何保存

    linux vi修改后如何保存 按ESC键去到命令模式,然后: :w?? 保存文件但不退出vi :w file 将修改另外保存到file中,不退出vi :w! 强制保存,不推出vi :wq 保存文件并 ...

  6. linux vi查找命令

    linux vi查找命令   div id="article_content" class="article_content">  使用vi编辑器编辑长文 ...

  7. Linux :: vi E212: Can't open file for writing

    Linux :: vi E212: Can't open file for writing sysct1.conf 可能无写权限!查看方法:ls -lh /etc/sysct1.conf如果没有,则c ...

  8. linux vi编辑常用命令

      linux vi编辑常用命令 来源:互联网 作者:佚名 时间:07-10 21:31:14 [大 中 小] linux vi编辑常用命令,需要的朋友可以参考下   vi编辑器中有三种状态模式 1. ...

  9. Linux vi 编辑器常见命令的使用

    Linux vi 编辑器常见命令的使用 Linux下的文本编辑器有很多种,vi 是最常用的,也是各版本Linux的标配.注意,vi 仅仅是一个文本编辑器,可以给字符着色,可以自动补全,但是不像 Win ...

  10. Linux vi 文本代码时显示行号或不显示行号

    Linux vi 文本代码时显示行号或不显示行号 前提  安装了vim $vi ~/.vimrc 显示的话加上 set nu 不想显示的话可以注释掉 "set nu 之后 $source ~ ...

随机推荐

  1. 作为平台的Windows PowerShell(二)

    在此系列文章的前一篇,我们看到了怎样使用System.Management.Automation.PowerShell 类来在c#应用程序中运行PowerShell 命令.在那些例子中,我们创建的都是 ...

  2. linux和windows文件名称长度限制

    Linux文件名称的长度限制是255个字符 windows下全然限定文件名称必须少于260个字符,文件夹名必须小于248个字符. linux下文件数.文件夹数.文件名称长度的各种限制 下面測试都是在没 ...

  3. 【19】设计class犹如设计type

    设计class 的时候,需要好好考虑下面的问题: 1.新type的对象应该如何被创建和销毁? 2.对象的初始化和对象的赋值该有什么样的差别? 3.新type的对象如果pass by value,意味着 ...

  4. 2013 ACM/ICPC Asia Regional Changsha Online J Candies

    AC了,但是不知道为什么,但是恶心的不得了~最近写代码,思路都非常清晰,但是代码各种bug~T.T~说说思路吧:二分~330ms~ 小队友fribbi的思路是离线250msAC~ 预处理solve函数 ...

  5. 一个 Android 任务队列的实现

    最近在做Android项目时遇到这样一个问题:客户端向服务器请求数据,而在网络信号太差的情况下,数据迟迟不到,甚至丢失.服务器为了解决这个问题做了频繁的重发,android 客户端就会收到很多不想要的 ...

  6. iOS开发——UI篇OC篇&UICollectionView详解+实例

    UICollectionView详解+实例 实现步骤: 一.新建两个类 1.继承自UIScrollView的子类,比如HMWaterflowView * 瀑布流显示控件,用来显示所有的瀑布流数据 2. ...

  7. js倒计时功能

    <input id="countdown" type="text" value="140时50分20秒"> <script ...

  8. [COCOS2DX]COCOS命令新建项目+编译安卓项目并成功运行

    全程搭建过程参考网址: http://blog.csdn.net/lengxue789/article/details/38116475 http://blog.csdn.net/cbbbc/arti ...

  9. Navigation Bar上的返回按钮文本颜色,箭头颜色以及导航栏按钮的颜色

    自从IOS7后UINavigationBar的一些属性的行为发生了变化.你可以在下图看到: 现在,如果你要修改它们的颜色,用下面的代码: self.navigationController.navig ...

  10. httpURLConnection-网络请求的两种方式-get请求和post请求

    GET请求 /** * 从网络获取json数据,(String byte[}) * @param path * @return */ public static String getJsonByInt ...