标签: linux 编辑工具


md

快捷键以及常用命令(前面带:的是命令)

  • h -> 左移一个字符
  • j -> 下移一行
  • k -> 上移一行
  • l -> 右移一个字符
  • w或Shift+→ -> 光标右移一个字到字首
  • W -> 光标右移一个以空格分隔的词到词首
  • b -> 光标左移一个字到字首
  • B -> 光标左移一个以空格分隔的词到词首
  • e -> 光标右移一个字到字尾
  • E -> 光标右移一个以空格分隔的词到词尾
  • ^ -> 光标移到行首
  • \$ -> 光标移到行尾
  • { -> 光标移到段落头
  • } -> 光标移到段落尾
  • Ctrl+d -> 下翻半屏
  • Ctrl+u -> 上翻半屏
  • Ctrl+f -> 下翻一屏
  • Ctrl+b -> 上翻一屏
  • G -> 移到缓冲区的最后一行
  • num G -> 移到缓冲区第num行
  • gg -> 移到缓冲区第一行
  • w filename -> 把文件保存到另一个文件名下
    -----------
  • x -> 删除当前光标所在位置的字符
  • dd -> 删除当前光标所在行
  • dw -> 删除当前光标所在位置的单词
  • d$ -> 删除当前光标所在位置至行尾的内容
  • J -> 删除当前光标所在行行尾的换行符(拼接行)
  • u -> 撤销前一编辑命令
  • i -> 在光标的前一个位置插入文本
  • I -> 在光标所在行行首插入文本
  • a -> 在当前光标后最加数据
  • A -> 在当前光标所在行行尾最加数据
  • r char -> 用char替换当前光标所在位置的一个字符
  • R text -> 用text覆盖当前光标所在位置的数据,直到按下ESC键
  • o -> 在当前行之下新开一行
  • O -> 在当前行之上新开一行
  • cw -> 修改从光标所在位置开始的词
  • cnw -> 修改从光标所在位置开始的n个词
  • yw -> 复制光标所在位置后的词
  • ynw -> 复制光标所在位置后的n个词
  • y\$ -> 复制光标所在位置到行尾的内容
  • yy -> 复制光标所在行
  • nyy -> 复制光标所在行以及其后的n-1行
  • tnyy -> 复制光标所在行以及其后的n-1行的数据存入buffer t
  • p -> 把内容粘贴到光标后的位置
  • P -> 把内容粘贴到光标前的位置
  • tnp -> 将存在buffer t的n行数据粘贴
  • :s/old/new -> 跳转到old第一次出现的地方,并用new替换
  • :s/old/new/g -> 用new替换光标所在行的所有old
  • :n,ms/old/new -> 用new替换第n到m行每行中第一次出现的old
  • :n,ms/old/new/g -> 用new替换第n到m行的所有old
  • :%s/old/new/g -> 替换整个文件中的old
  • :%s/old/new/gc -> 替换整个文件中的old,但每次出现时提示
  • /pattern -> 从光标开始处向文件尾搜索pattern
  • ?pattern -> 从光标开始处向文件首搜索pattern
  • n -> 在同一方向重复上一次搜索命令
  • N -> 在反方向上重复上一次搜索命令
  • . -> 执行上一次执行的命令
    -------------
  • ZZ -> 保存并退出
  • :w filename -> 写入到filename文件中
  • :n,mw filename -> 把第n到m行写入到filename文件中
  • :x -> 保存(如果文件被修改过的话)并退出
  • :q! -> 不保存退出
  • :q -> 退出,如果文件有修改,会有出错提示
  • :wq -> 保存并退出
    -------------
  • :number -> 显示行号光标所在行的行号
  • :!command -> 执行shell命令command
  • :r!command -> 把command命令的执行结果输出到当前行的下一行

有些编辑命令允许使用数字修饰符来指定重复改命令的次数,如2x会删除从光标位置开始的两个字符,命令5dd会删除从光标当前所在行开始的5行。删除数据时,数据会被保存在一个单独的寄存器中,可以使用p命令取回。

一些小技巧:

  1. :n,$s/^/something 在第n行到最后一行的行首插入something
  2. %s/$/something/g 在文件的每一行尾插入something
    tips: s=substitute g=global
  1. vi file1 file2 同时编辑两个文件
  2. yy 拷贝file1中的某行
  3. :n 切换到file2
  4. p 在file2光标后粘贴从file1拷贝的内容
  5. :N 切回到file1
  1. :%s#/usr/bin#/bin#g:%s//usr/bin//bin/g 把文件中所有路径/usr/bin换成/bin
  1. :set nu 编辑器每一行显示行号

Vi Usage的更多相关文章

  1. vi 编辑内容中查找字符位置

    [root@localhost gdm]# vi /etc/X11/gdm/gdm.conf # You can also use the gdm-restart and gdm-safe-resta ...

  2. 我的vi/vim配置文件

    位于/etc/vim/的vimrc " All system-wide defaults are set in $VIMRUNTIME/debian.vim and sourced by & ...

  3. vi 编辑器笔记

    摘要: vi从安装到使用 vi从菜鸟到高手 0. vim - Vi IMproved, a programmers text editor 分为 VI和VIM,现在流行的发行版里面VI=VIM 是一个 ...

  4. 3、树莓派的配置:改静态IP、连接ssh、安装中文字体、安装谷歌输入法、增加USB电流、修改触摸屏分辨率、扩展sd卡空间、修复vi和vim乱码问题、安装配置远程桌面vnc

    本博文仅作本人操作过程的记录,留作备忘.自强不息 QQ1222698 1.连接上HDMI线,插上触摸屏,插上键盘,鼠标,网线,启动.系统正常启动,但是一直闪烁,不停的黑屏,是由于触摸屏的usb口供电不 ...

  5. GNU Screen Usage

    分屏: 1.在终端输入screen命令 2.Ctrl+a 然后shift+s 上下分屏,切换到下方Ctrl+a tab然后新建一个window(Ctrl+a c) 3.切换到上方,Ctrl+a tab ...

  6. [OpenCV-Python] OpenCV 中视频分析 部分 VI

    部分 VI视频分析 OpenCV-Python 中文教程(搬运)目录 39 Meanshift 和 和 Camshift 目标 • 本节我们要学习使用 Meanshift 和 Camshift 算法在 ...

  7. CentOS上svn checkout时报错SSL handshake failed: SSL error: Key usage violation in certificate has been det

    局域网安装了个SVN在checkout的时候报错 SSL handshake failed: SSL error: Key usage violation in certificate has bee ...

  8. SHELL脚本编程的常识和VI常用技巧

    来源:http://mprc.pku.edu.cn/mentors/training/TrainingCourses/material/ShellProgramming.HTM#_Toc3751808 ...

  9. Vi编辑器修改文件.bash_profile可解决backspace出现乱码问题,rlwrap 的安装。

    Vi编辑器修改文件.bash_profile可解决backspace出现乱码问题 使用SecureCRT或是pietty_ch连接到一台安装有Oracle DB 10g的RHEL4.2的机器,linu ...

随机推荐

  1. 【CentOS】搭建Web服务器

    参考资料:     http://www.paipat.com/?post=24     http://www.cnblogs.com/xiaoluo501395377/archive/2013/04 ...

  2. DOM操作样式表及其兼容性

    DOM操作样式表的时候,存在很多浏览器兼容上的问题,测试的时候用的是Firefox 28.0.IE11.IE8.Chrome.测试的时候发现,不兼容问题基本上都是IE8和非IE浏览器之家的问题,很多I ...

  3. JS 学习笔记--3--数据类型

    1.typeof 操作符 用来获取变量或者字面量的类型,也可以typeof(x);但是typeof并非内置函 数,而是一个操作符变量2.JS 一共6种类型 Undefined/Null/Boolean ...

  4. Vim 常用命令 一

    今天第一次学习了 Vim编辑器的一些使用  拿出来和大家分享下. 1.首先 列出 常用快捷键 u 表示 撤销上一步 x 表示 删除光标位内容 dd 表示 删除光标所在行内容 >G   表示 光标 ...

  5. 在linux中使用phpize安装php扩展模块

    介绍:linux系统中,php安装成功后,在bin目录下会生成一个名叫phpize的可执行脚本,这个脚本的用途是动态安装php扩展模块.使用phpize脚本安装php扩展模块的好处:在安装php时没有 ...

  6. IE6/7/8如何兼容CSS3属性

    最近在工作中总是要求IE8兼容CSS3属性,在网上搜了搜主要是引入了一个htc文件(ie-css3.htc或者PIE.htc.个人认为这两个文件的作用差不多,具体差异值得探讨) 下载地址:https: ...

  7. AJAX实现仿Google Suggest效果

    修复了一些细节代码(支持持续按键事件) *项目名称:AJAX实现类Google Suggest效果*作者:草履虫(也就是蓝色的ecma)*联系:caolvchong@gmail.com*时间:2007 ...

  8. 初识IOS

    编译环境: ssh cloud@10.0.4.148  mx-cloud 1.关于ARM架构 IPHONE上的ARM-CPU架构在不断的进化过程中,目前情况如下: ARMv8 / ARM64 = iP ...

  9. POJ 1961 2406 (KMP,最小循环节,循环周期)

    关于KMP的最短循环节.循环周期,请戳: http://www.cnblogs.com/chenxiwenruo/p/3546457.html (KMP模板,最小循环节) POJ 2406  Powe ...

  10. iOS第三方语音-讯飞语音

    官方网站:http://www.xfyun.cn/ 注册还要绑定微信,坑啊,识别率感觉没得微信语音好,但是微信语音审核一直不过,研究下这个 1.下载sdk,主要就下面几个文件,我主要用的是语音识别