1 vi/ vim键盘图






2 文字解说

进入编辑模式的6种方式:

i在光标前插入

I在行首插入

a在光标后插入

A在行末插入

o在下一行插入

O在上一行插入

删除字符

x 删除当前字符

X 删除前一个字符

行操作

dd 删除当前行

5dd从当前行开始算,删除5行

yy 拷贝当前行

8yy 拷贝当前开始的8行

p粘贴paste

linux中 you have newmail in /var/spool/mail/root是什么意思

一般这种情况mail的内容就只是一些正常的系统信息或者是比较重要的错误报告。如果你安装了mutt的话直接用这个命令就可以查看mail的内容(用root登陆先),没有装的话用cat /var/spool/mail/root查看(用root登陆先)。

在Normal Mode下
:%s/mmm/nnn/g 从在整个文件范围内把mmm替换成nnn。 g=gloabal

/www 搜索指定的字符串www

:3 光标定位在第3行

3 表格

一般模式

光标移动

h或 向左方向键

光标向左移动一个字符

j或 向下方向键

光标向下移动一个字符

k或 向上方向键

光标向上移动一个字符

l或 向右方向键

光标向右移动一个字符

Ctrl+f

屏幕向前翻一页(常用)

Ctrl+b

屏幕向后翻一页(常用)

Ctrl+d

屏幕向前翻半页

Ctrl+u

屏幕向前翻半页

+

光标移动到非空格符的下一列

-

光标移动到非空格符的上一列

n<space>

按下数字后再按空格键,光标会向右移动这一行的n个字符。例如20<space>,则光标会向右移动20个字符

0

(是数字0)动到这一行的第一个字符处(常用)

$

移动到这一行的最后一个字符处(常用)

H

光标移动到这个屏幕最上方的那一行

M

光标移动到这个屏幕中央的那一行

L

光标移动到这个屏幕最下方的那一行

G

光标移动到这个屏幕最后一行

nG

移动到这个文件的第n行。例如20G,则会移动到这个文件的第20行(可配合:set nu

n<Enter>

光标向下移动n行(常用)

一般模式

查找与替换

/word

在光标之后查找一个名为word的字符串(常用)

?word

在光标之前查找一个名为word的字符串

:n1,n2s/word1/word2/g

在第n1n2行之间查找word1这个字符串,并将该字符串替换为word2(常用)

:1,$s/ word1/word2/g

在第一行与最后一行之间查找word1这个字符串,并将该字符串替换为word2(常用)

:1,$s/ word1/word2/gc

在第一行与最后一行之间查找word1这个字符串,并将该字符串替换为word2,且在替换前显示提示符让用户确认(conform)(常用)

一般模式

删除、复制与粘贴

x,X

x为向后删除一个字符,X为向前删除一个字符(常用)

nx

向后删除n个字符

dd

删除光标所在的那一整行(常用)

ndd

删除光标所在列的向下n列,例如,20dd则事删除20列(常用)

d1G

删除光标所在行到第一行的所有数据

dG

删除光标所在列到最后一行的所有数据

yy

复制光标所在行(常用)

nyy

复制光标所在列的向下n列,例如,20yy则是复制20列(常用)

y1G

复制光标所在列到第一列的所有数据

yG

复制光标所在列到最后一列的所有数据

p,P

p为复制的数据粘贴在光标下一列,P则为粘贴在光标上一列(常用)

j

将光标所在列与下一列的数据结合成一列

u

恢复前一个动作(常用)

编辑模式

i,I

插入:在当前光标所在处插入输入的文字,已存在

a,A

添加:由当前光标所在处的下一个字符开始输入,已存在的字符会向后退(常用)

o,O

插入新的一行:从光标所在行的下一行行首开始输入字符(常用)

r,R

替换:r会替换光标所指的那一个字符;R会一直替换光标所指的文字,直到按下Esc为止(常用)

Esc

退出编辑模式,回到一般模式(常用)

命令行模式

 

:w

将编辑的数据写入硬盘文件中(常用)

:w!

若文件属性为只读,强制写入该文件

:q

退出vi(常用)

:q!

若曾修改过文件,又不想保存,使用为强制退出不保存文件

:wq

保存后退出,若为:wq!,则为强制保存后退出(常用)

:w[filename]

将编辑数据保存为另一个文件(类似另存新文档)

:r[filename]

在编辑的数据中,读入另一个文件的数据。即将filename这个文件内容加到光标所在行的后面

:set nu

显示行号,设定之后,会在每一行的前面显示该行的行号

:set nonu

ser nu相反,为取消行号

n1,n2 w[filename]

n1n2的内容保存为filename这个文件

Vi/Vim的快捷方式的更多相关文章

  1. 3、Linux基础--cp、mv、rm、alias、vi/vim命令

    笔记 1.考试 1.判断网络是否通畅的命令 ping 2.定义系统提示组成的变量 PS1 3.Linux中目录从什么开始 根(/) 4.系统中目录路径类型有哪些,解释一下 绝对路径:以根目录作为参照物 ...

  2. Linux vi/vim(转载)

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

  3. vi/vim 的使用

    vi/vim 的使用 基本上 vi/vim 共分为三种模式,分别是一般模式.编辑模式与指令列命令模式. 这三种模式的作用分别是: 一般模式:以 vi 打开一个档案就直接进入一般模式了(这是默认的模式) ...

  4. 解决vi/vim中粘贴会在行首多很多缩进和空格的问题

    解决vi/vim中粘贴会在行首多很多缩进和空格的问题 secureCRT会将你原来的文本原封不动的按照字符串的样式发送给服务器.所以当你的服务器上的vim设置为autoindent的话,在i模式下,那 ...

  5. Linux下Vi/Vim使用笔记

    启动和关闭vim vi 打开 Vi/Vim 打开 Vi/Vim 并加载文件 <file> vi <file> vim编辑器的三种模式:一般模式.编辑模式和命令行模式在一般模式中 ...

  6. vi/vim基本使用方法

    vi/vim 基本使用方法本文介绍了vi (vim)的基本使用方法,但对于普通用户来说基本上够了!i/vim的区别简单点来说,它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅兼容vi的所 ...

  7. Linux vi/vim

    所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在. 但是目前我们使用比较多的是 vim 编辑器. vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正 ...

  8. Linux上vi(vim)编辑器使用教程

    vi(vim)是上Linux非常常用的编辑器,很多Linux发行版都默认安装了vi(vim).vi(vim)命令繁多但是如果使用灵活之后将会大大提高效率.vi是“visual interface”的缩 ...

  9. 【转载】-- vi/vim使用

    vi/vim 基本使用方法本文介绍了vi (vim)的基本使用方法,但对于普通用户来说基本上够了!i/vim的区别简单点来说,它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅兼容vi的所 ...

随机推荐

  1. 数据库 MySQL基础知识

    (关于MySQL的安装,具体见下面博客:http://www.cnblogs.com/wj-1314/p/7573242.html) 一.什么是数据库 ? 数据库是按照数据结构来组织,存储和管理数据的 ...

  2. WPF DataTrigger数据触发器

    1.通过绑定的属性值变化,动态改变界面的显示,比如绑定了IsExpanded,当为true,grid高度变成600,反之,grid高度变成320. <Grid.Style> <Sty ...

  3. 局域网内一台电脑的ip地址自己会变,怎样让它不变

    有两种方法可以让局域网内的电脑拥有固定的ip地址: 方法一:使用DHCP的静态地址分配功能(以TP-Link TL-WR847路由器为例). 打开浏览器,输入路由器LAN口的ip地址和管理员用户名.密 ...

  4. Java数据库基础(JDBC)

    JDBC(Java Data Base Connectivity):SUN公司为了简化统一对数据库的操作,定义了一套Java操作数据库的规范,称之为JDBC: 这样应用程序就不需要关注数据库底层的详细 ...

  5. mybatis_SQL映射(2)

    文章摘录自:http://blog.csdn.net/y172158950/article/details/17258377 1. sql的重用:定义一个sql片段,可在任何SQL语句中重用该片段. ...

  6. SerialChart串口示波器的成功调试

    2018-01-1601:29:06 深夜更新一波串口示波器! http://t.cn/RQMA3uq 心得体会 总之将数据输出设置为","分割的形式即可 重点注意事项!!!! m ...

  7. 《Java编程的逻辑》终于上市了!

    2018年1月下旬,<Java编程的逻辑>终于出版上市了! 这是老马过去两年死磕到底.无数心血的结晶啊! 感谢"博客园"的广大读者们,你们对老马文章的极高评价.溢美之词 ...

  8. java里程碑之泛型--类型通配符

    1,泛型与数组在子类上面的对比 在整理java泛型的类型通配符之前,我们先来研究下java在数组设计上的一个不合理.我们来看下面代码: public class Test { public stati ...

  9. 自己模拟的一个简单的tomcat

    servlet容器的职责 总的来说,一个全功能的servlet容器会为servlet的每个HTTP请求做下面的一些工作: 1,当第一次调用servlet的时候,加载该servlet类并调用servle ...

  10. C语言学习之交换(冒泡)排序

    在学习c语言的过程中,在数组内容中我们总是能学习到对一组数据进行排序,对于排序有许多的方法,像 (交换)冒泡排序.选择排序.(基数)桶排序.(插入)二分法排序等等. 我主要以我个人的理解去分析常见的交 ...