Vim/Vi是一个功能强大的全屏幕文本编辑器,是Linux/UNIX上最常用的文本编辑器,它的作用是建立、编辑、显示文本文件。Vim/Vi 没有菜单,只有命令。
早前也用过Vim变过C++/C的代码,后来一不用,命令全都忘了,本来就没记多少。这里给出基本的一些操作指令,算是方便以后查看吧。本人是小白.......处于学习阶段。大神勿喷.....

主要的就是vim的三种工作模式:

插入命令:

  

a    在光标后附加文本
A 在本行行末附加文本
i 在光标前插入文本
I 在本行开始插入文本
o 在光标下插入新行
O 在光标上插入新行

定位命令:

h、方向左键

j、方向下键

k、方向上键

l、方向右键

$、移至行尾

0、移至行首

H、移至屏幕上端

M、移至屏幕中央

L、移至屏幕下端

  

:setnu    设置显示行号

:setnonu  取消显示行号

gg            到第一行
G 大最后一行 nG 到第n行 :n 到第n行

  

删除命令:

x    删除光标所在处字符

nx   删除光标所在处后n个字符

dd    删除光标所在行,ndd删除n行

dG    删除光标所在行到末尾的内容

D    删除从光标所在处到行尾

:n1,n2d    删除指定范围的行

  

复制和剪切命令:

yy、Y    复制当前行

nyy、nY   复制当前行以下n行

dd    剪切当前行

ndd    剪切当前行以下n行

p、P    粘贴在当前光标所在行下
或行上

  

替换和取消命令:

r    取代光标所在处字符

R    从光标所在处开始替换字
符,按Esc结束 u 取消上一步操作 (撤销)

  

搜索和替换命令:

/string    向前搜索指定字符串搜索时忽略大小写:set ic

n    搜索指定字符串的下一个出现位置

:%s/old/new/g    全文替换指定字符串

:n1,n2s/old/new/g    在一定范围内替换指定字符串

  

保存和退出命令:

:w   保存修改

:wnew_filename   另存为指定文件

:wq    保存修改并退出

ZZ    快捷键,保存修改并退出

:q!    不保存修改退出

:wq!    保存修改并退出(文件所有者
可忽略文件的只读属性)

  

应用实例:

导入命令执行结果  :r  !命令      可以导入文件内容和执行完查询命令后的信息

定义快捷键  :map  快捷键 触发命令
范例: : map ^P I#<ESC>
: map ^B 0x
这里的^是通过ctrl + V显示的 连续行注释 :n1,n2s/^/#/g :n1,n2s/^#//g :n1,n2s/^/\/\//g 替换 :ab sammail samlee@lampbrother.net

  

我们完全可以把我们的自定义放入~/.vimrc  然后每次打开文件就有我们的默认设置了。

Linux——vim/vi 简单学习笔记的更多相关文章

  1. Linux——帮助命令简单学习笔记

    Linux帮助命令简单学习笔记: 一: 命令名称:man 命令英文原意:manual 命令所在路径:/usr/bin/man 执行权限:所有用户 语法:man [命令或配置文件] 功能描述:获得帮助信 ...

  2. Linux——用户管理简单学习笔记(四)

    主要讲两个用户管理的案例: 1: 限制用户su为root,只允许某个组的的用户su # groupadd sugroup 首先添加我们的用户组 # chmod 4550 /bin/su 改变命令的权限 ...

  3. Linux——用户管理简单学习笔记(二)

    其实如果我们了解了Linux中用户管理的配置文件之后,完全可以手工管理用户: 添加用户: useradd 设置选项 用户名 -D 查看缺省参数 u:UID g:缺省所属用户组GID G:指定用户所属多 ...

  4. Linux——用户管理简单学习笔记(一)

    Linux用户分为三种: 1:超级用户(root,UID=0) 2:普通用户(UID 500-60000) 3:伪用户(UID 1-499)  伪用户: 1.伪用户与系统和程序服务相关 :nbin.d ...

  5. Linux——进程管理简单学习笔记(二)

    计划任务: 为什么要设置计划任务 : 实现数据库备份,发送系统通知神马的..... 计划任务的命令: 一: at :  安排作业在某一时刻执行一次 nbatch    安排作业在系统负载不重时执 行一 ...

  6. Linux——用户管理简单学习笔记(三)

    用户组管理命令: groupadd -g 888 webadmin 创建用户组webadmin,其GID为888 删除用户组: groupdel 组名 修改用户组信息 groupmod groupmo ...

  7. Log4j简单学习笔记

    log4j结构图: 结构图展现出了log4j的主结构.logger:表示记录器,即数据来源:appender:输出源,即输出方式(如:控制台.文件...)layout:输出布局 Logger机滤器:常 ...

  8. OI数学 简单学习笔记

    基本上只是整理了一下框架,具体的学习给出了个人认为比较好的博客的链接. PART1 数论部分 最大公约数 对于正整数x,y,最大的能同时整除它们的数称为最大公约数 常用的:\(lcm(x,y)=xy\ ...

  9. linux vim vi编辑时撤销输入操作

    linux vim vi编辑时撤销输入操作 1,esc退出输入状态 2,u 撤销上次操作 3,ctrl+r 恢复撤销

随机推荐

  1. PAT 1020 Tree Traversals[二叉树遍历]

    1020 Tree Traversals (25)(25 分) Suppose that all the keys in a binary tree are distinct positive int ...

  2. Selenium Webdriver——操作隐藏的元素(二)display属性

    有时候我们会碰到一些元素不可见,这个时候selenium就无法对这些元素进行操作了.例如,下面的情况: 页面主要通过“display:none”来控制整个下拉框不可见.这个时候如果直接操作这个下拉框, ...

  3. Summary: Class Variable vs. Instance Variable && Class Method

    这里列举的是一些我平时碰到的一些Java Grammar,日积月累. Class Variable vs Instance Variable: Instance variables Instance ...

  4. 按照用户名和角色查询用户liferay

    需求:当登录的用户输入用户的名字和角色的时候,模糊查询,然后就是Ajax的异步请求刷新界面 首先在一个工具类中写上一条你要写的sql语句代码如下: package com.ebizwindow.crm ...

  5. python绘图之seaborn 笔记

    前段时间学习了梁斌老师的数据分析(升级版)第三讲<探索性数据分析及数据可视化>,由于之前一直比较忙没有来得及总结,趁今天是周末有点闲暇时间,整理一下笔记: 什么是seaborn Seabo ...

  6. 测试开发-web测试要点

    参数输入考虑 参数数值包含1个.多个.很多个.null.参数值前后包含空格的2种情况   数字类型:正数.负数.0.0.0.+0.0.-0.0.指数.对数.分数.小数.复数.科学计数法的测试,全角的数 ...

  7. python中的对象(三)

    一.python对象 python使用对象模型来存储数据.构造任何类型的值都是一个对象. 所有python对象都拥有三个特性:身份.类型.值 身份:每个对象都有一个唯一的身份标识自己,任何对象的身份可 ...

  8. ping和telnet的区别

    内容主要转自: http://jingyan.baidu.com/article/8065f87fc3b31123312498e5.html http://zhidao.baidu.com/link? ...

  9. PHP获取6位数随机数,获取redis里面不存在的6位随机数(设置24小时过时)

    PHP获取6位数随机数 PHP str_shuffle() 函数str_shuffle() 函数随机打乱字符串中的所有字符. 语法 str_shuffle(string) 参数 描述 string必需 ...

  10. vm #set、日期截取、#foreach&#if

    <div class="form_row"> <label>状态:</label> #if ($!cp.runState =='t') #set ...