Vi的使用:

范例一:

使用Vi进入一般模式:

[root@dsetl lp]# vi test1.txt

范例二:按下i键进入编辑模式,开始编辑文字

-- INSERT –

范例三:按下【ESC】键回到一般模式

范例四:在一般模式下按下 :wq保存后离开Vi

注意:如果文件权限不对,例如为-r--r--r--,可能无法写入,使用 :wq!多加一个叹号进行强制写入.

范例5vi命令设置行号

[root@dsetl lp]# cp /etc/man.config .

[root@dsetl lp]# vi man.config

:set nu – 设置行号

:set nonu --取消行号

范例6vi命令删除所在行

  • D或者d按两次 删除光标所在行

范例7vi命令查找字串

  • /text  从光标位置往下找字串text ?text 从光标位置往上找字串text

  • n 继续找下一个字串(在输入上面的寻找指令之后使用)

  • N 继续向上找一个字符串(在输入上面的寻找指令之后使用)

范例8vi命令移动光标

  • Ctrl+f 向下移动一页

  • Ctrl+b 向上移动一页

  • 0 移动到这一行的最前面处

  • $ 移动到这一行的最后面字符处

  • G移动到这个文件的最后一行

  • nG移动到这个文件的第n行。10G移动到这个文件的第10

  • gg移动到这个文件的第1

  • n<Enter> 光标向下移动n行。

  • 40 + 向右箭头

范例8vi命令搜索与替换(一般模式)

%表示整个文件,$从当前行到文件尾。s表示替换操作。

g放在命令末尾,表示对指定行的搜索字符串的每次出现进行替换;

不加g,表示支队指定行的搜索字符串的首次出现进行替换。

  • :%s/text1/text2/g   将各行的text1替换为text2

  • :1,$s/ str1/ str2/g 用字符串str2替换所有出现的字符串str1

  • :.,$s/ str1/ str2/g 用字符串str2替换正文当前行到末尾所有出现的字符串str1

  • :1,$s/ str1/ str2/gc 用字符串str2替换所有出现的字符串str1,进行询问

范例8vi命令删除、复制、粘贴(一般模式)

删除:

  • x为向后删除一个字符,X为向前删除一个字符。

  • dd 删除光标所在的那一整行,ndd,例如3dd删除向下的3行。

复制

  • yy表示复制光标所在的哪一行

  • nyy :n为数字。复制光标所在的向下n行,例如20yy则是复制20行。

  • yw 将光标所在单词拷入剪贴板

  • y$ 将光标至行尾的字符拷入剪贴板

粘贴:

  • p :把粘贴到的数据粘贴到光标的下一行,

  • P则为贴在光标的上一行。

范例9:复原操作与重做操作

  • u表示复原前一个操作,【Ctrl+r表示重做上一个操作。

  • . 小数点,意思是重复前一个动作。如果想重复删除,重复粘贴,按下“.”就可以。

  • Vi命令的使用练习:

Vi的使用的更多相关文章

  1. 在docker容器中vi指令找不到

    在使用docker容器时,有时候里边没有安装vi,敲vi命令时提示说:vi: command not found,这个时候就需要安装vi,可是当你敲apt-get install vi命令时,提示: ...

  2. linux vi 命令大全

    进入vi的命令 vi filename :打开或新建文件,并将光标置于第一行首 vi +n filename :打开文件,并将光标置于第n行首 vi + filename :打开文件,并将光标置于最后 ...

  3. Cygwin中解决vi编辑器方向键和Backspace键不好使、安装vim的方法

    修改.virc文件(如果没有就创建)vi .virc 添加以下内容set nocpset backspace=start,indent,eol 保存退出:wq 如果是vim就修改.vimrc文件. 由 ...

  4. vi(vim)键盘图及其基本命令

    进入vi vi filename                打开或新建文件,并将光标置于第一行首 vi +n filename           打开文件,并将光标置于第 n行首 vi + fi ...

  5. vi安装Vundle+YouCompleteMe+注释快捷'scrooloose/nerdcommenter'

    Vundle is short for Vim bundle and is a Vim plugin manager. 从git上下载vundle $ git clone https://github ...

  6. vi学习总结

    1.模式 命令行模式:光标的移动.内容删除移动复制操作 插入模式:文字输入,即编辑状态 底行模式:文件保存或退出vi,设置编辑环境 2.基本操作 vi myfile,输入vi 文件名,,则进入vi. ...

  7. vim(vi)常用操作及记忆方法

    vi(vim)可以说是linux中用得最多的工具了,不管你配置服务也好,写脚本也好,总会用到它.但是,vim作为一个“纯字符”模式下的工具,它的操作和WINDOWS中的文本编辑工具相比多少有些复杂.这 ...

  8. vim vi Ubuntu

    在vi编辑模式下按退格键不能删除内容,按方向键不能上下左右移动?如果是则:1. 在vi里非编辑模式下按冒号进入到末行命令模式,然后输入set nocompatible,回车,然后在进入vi编辑模式,看 ...

  9. vi 的使用

    Vi 分三种模式:一般模式,编辑模式,和命令模式 一般模式: 光标移动,搜索与替换,删除,复制,粘贴 编辑模式:插入或者替换文本 命令模式:读取.保存文件 一般模式 光标移动: h(左), j(下), ...

  10. linux vi(vim)常用命令汇总

    1 查找 /xxx(?xxx) 表示在整篇文档中搜索匹配xxx的字符串, / 表示向下查找, ? 表示向上查找其中xxx可以是正规表达式,关于正规式就不多说了. 一般来说是区分大小写的, 要想不区分大 ...

随机推荐

  1. EMVTag系列7《静态签名数据》

    Ø 5F24    应用有效期 L: 3 -M(必备) 1)  芯片中的应用失效日期5F24,服务码5F30,必须与芯片中的二磁道等效数据(Tag57)中的失效日期和服务码一致. 2)  qPBOC ...

  2. Oracle Database Links解析

    什么是Database Links呢? 首先我们阐述下它的作用:使用户可以通过一个数据库访问到另外一个远程数据库. 那么Database Link是存储着远程数据库的连接信息. 如下图所示: 用户Sc ...

  3. hdu 5224 Tom and paper

    题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=5224 Tom and paper Description There is a piece of pa ...

  4. hdu 5112 A Curious Matt

    题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=5112 A Curious Matt Description There is a curious ma ...

  5. core java 8~9(GUI & AWT事件处理机制)

    MODULE 8 GUIs--------------------------------GUI中的包: java.awt.*; javax.swing.*; java.awt.event.*; 要求 ...

  6. 【转】Git常用命令备忘

    Git配置 git config --global user.name "robbin" git config --global user.email "fankai@g ...

  7. Xcode真机调试错误之"Please valify your...clock not set"

    乍一看错误信息是证书过期,其实是描述证书错乱了. Xcode->Preferences->Account  将选中其中一个描述文件 show in finder,将里面的全都删除.

  8. ABAP自定义类的构造方法

    REPORT ytest_011. *----------------------------------------------------------------------* * CLASS z ...

  9. Centering HTML elements larger than their parents

    Centering HTML elements larger than their parents It's not a common problem, but I've run into it a ...

  10. MVC Controller 链接到 API Controller 以及反向链接

    MVC Controller 链接到 API Controller 以及反向链接 问题 想创建一个从 ASP.NET MVC controller 到 ASP.NET Web API controll ...