游标控制

h 游标向左移
j 游标向下移
k 游标向上移
l (or spacebar) 游标向右移
w 向前移动一个单词
b 向后移动一个单词
e 向前移动一个单词,且游标指向单词的末尾
( 移到当前句子的首部
) 移到下一个句子的首部
{ 移到当前段的首部
} 移到下一段的首部
[[ 移到当前区段的首部
]] 移到下一个区段的首部
0 移到当前行的首部
$ 移到当前行的尾部
^ 移到当前行第一个非空白字符的地方
+ or RETURN 移动到下一行的第一个字符
- 移动到上一行的第一个字符
n | 移动到当前行的字符n的地方
H 移动到当前屏幕的首部
M 移动到当前屏幕的中部
L 移动到当前屏幕的尾部
nH 移动到当前屏幕首部下的n行
nL 移动到当前屏幕尾部上的n行
Ctrl-F 移动到下一屏
Ctrl-B 移动到上一屏
Ctrl-D 向下移动半屏
Ctrl-U 向上移动半屏
z RETURN 刷新屏幕,调整屏幕,使当前的游标在刷新后的屏幕的首部(是不是不明白???不明白的话,试试就知道是什么意思了)
z . 刷新屏幕,调整屏幕,使当前的游标在刷新后的屏幕的中部
z - 刷新屏幕,调整屏幕,使当前的游标在刷新后的屏幕的尾部
Ctrl-L 刷新屏幕,不调整屏幕位置
Ctrl-R 刷新屏幕,不调整屏幕位置
/text 向下搜索text
/ 重复上次的搜索的内容向下搜索一次
?text 向上搜索text
? 重复上此搜索的内容向上搜索一次
n 重复上此的搜索,向下搜索
N 重复上此的搜索,向上搜索
/text/+n 移动到text所在行的下面n行
?text?-n 移动到text所在行的上面n行
nG 移动到n行
:n 移动到n行
G 移动在最后一行

文件操作

:w                       写文件 
:w!                      写文件,忽略警告信息
:wq                     写文件之后退出编辑
:q                       退出编辑器
:q!                      强制退出编辑器
ZZ                      退出编辑器,如果文件有改动,则保存再退出
:x 退出编辑器,如果文件有改动,则保存再退出
:e!                      重新从磁盘加载文件
:n                       编辑地下一行
:n!                      编辑地下一行(忽略警告)

/ word                 找名称word 的字符串 n键继续寻找相同内容

%s/key1/key2/g  g是全局替换 把 1替换成2

:set nu             设置行号
:set nonu          取消行号

u                       撤销上一个动作

内容编辑

A 当前行的尾部追加内容
i 游标前插入内容
I 游标后插入内容
o 在鼠标所在行的下面添加内容
O 在鼠标所在行的上面添加内容
ESC键 退出编辑模式
空格键 移动到下一个tab
cw 删除游标所在的字符,然后进入编辑模式
cc 删除游标所在的行,然后进入编辑模式
C 删除从游标所在的位置到行尾的字符,然后进入编辑模式
dd 删除当前行
D 删除当前行游标所在的位置后面的字符
dw 删除游标所在的字符
d} 删除当前段游标后的字符
d^ 删除游标前到行首的字符
J 连结上下两行的内容
p(小写) 在游标后面插入粘贴板中的内容
P(大写) 在游标前面插入粘贴板中的内容
rx 用x替换游标位置的字符
u 撤销最后的改变
U 还原当前行的内容
x 向后删除游标所在位置的字符
X 向前删除游标前面的字符
nX 删除前面的n个字符,游标所在的字符将不会被删
~ 反转字母的大小写
.(点号) 还原最后的改变(相当于ctrl + z)
y 拷贝当前行到新的粘贴板
yy 拷贝当前行

从零开始学安全(十六)● Linux vim命令的更多相关文章

  1. Java从零开始学四十六(Junit)

    一.软件测试 软件开发: 项目调研--需求分析--软件设计--程序编码--软件测试--运行维护 软件测试:利用测试工具按照测试方案和流程对产品进行功能和性能测试,使用人工或者自动手段来运行或测试某个系 ...

  2. Java从零开始学三十六(JAVA IO- 字符流)

    一.字符流 BufferedReader:BufferedReader是从缓冲区之中读取内容,所有的输入的字节数据都将放在缓冲区之中 BufferedWriter:把一批数据写入到缓冲区,当缓冲区区的 ...

  3. Java从零开始学二十六(包装类)

    一.包装类 包装类是将基本类型封装到一个类中.也就是将基本数据类型包装成一个类类型. java程序设计为每一种基本类型都提供了一个包装类.这些包装类就在java.lang包中.有8个包装类 二.包装类 ...

  4. 这两天学到的简单Linux的命令

    1. 定时执行命令查看命令的接口 watch -n kubectl get pods -n kube-ops 每十秒钟查看一下命令运行接口 2. 后台方式运行 jenkins 当前窗口关闭不影响执行结 ...

  5. Linux学习之CentOS(二十六)--Linux磁盘管理:LVM逻辑卷的创建及使用

    在上一篇随笔里面 Linux学习之CentOS(二十五)--Linux磁盘管理:LVM逻辑卷基本概念及LVM的工作原理,详细的讲解了Linux的动态磁盘管理LVM逻辑卷的基本概念以及LVM的工作原理, ...

  6. Linux vim命令

    介绍 vim命令和vi的操作基本一致,vim命令的参数很多,我在这里列出了一些平时需要用的一些参数,vim主要有两个界面一个是esc的操作界面还有一个是输入i的编辑界面. 移动光标 0 (零):将光标 ...

  7. Linux学习(十六)VIM

    一.简介 VIM是vi的增强版.VIM是Linux平台上的主要编辑器.基本上所有的文档的新增,修改,保存都需要用到它.所以,掌握VIM是很有必要的. vim的安装非常简单,一条命令就可以了: yum ...

  8. Linux命令(二十六) 用户管理命令

    一.添加用户 useradd useradd 命令用于创建新用户,格式为useradd [选项] 用户名. 可以使用 useradd 命令创建用户帐户,使用该命令创建账户时,默认的用户目录在 /hom ...

  9. 0050 Linux VIM 命令

    1.  模式切换 vim的模式 $ vi filename 进入normal 模式,这是命令模式,用于执行大多数常用的编辑命令,不能输入 敲i 进入 insert 模式,这是正常的编辑模式,按Esc ...

随机推荐

  1. BABOK概述

    BABOK概述 BABOK(Business Analysis Body of Knowlodge: 业务[或商业]分析知识体系)是由位于加拿大的IIBA(International Institut ...

  2. Python之配置日志的几种方式(logging模块)

    原文:https://blog.csdn.net/WZ18810463869/article/details/81147167 作为开发者,我们可以通过以下3种方式来配置logging: 1)使用Py ...

  3. MATLAB2016a安装破解教程

    首先,下载软件:下面是某博主的分享,可以下载软件. 链接:https://pan.baidu.com/s/1i6BgD8p       密码:17gg  第一步:安装软件 1,下载文件,得到R2016 ...

  4. 包建强的培训课程(17):Java代码敏捷之道

    第1讲 千言万语聊注释 按图索骥 奇葩注释“赏析” Git提交的学问 第2讲 RxJava:函数式编程 从一只猫的故事说起 背压 第3讲 代码瘦身 抽象相同逻辑的代码 查找相似代码 AOP一瞥 第4讲 ...

  5. Javascript高级编程学习笔记(70)—— 事件(14)内存和性能

    由于事件处理程序是现代的web程序交互能力的提供者 所以在日常实践中,我们免不了要向页面中添加大量的事件处理程序(不管是用于用户交互还是用于统计用户数据) 在创建GUI(图形用户界面)的语言(如C#) ...

  6. TextView文字描边实现

    TextView文字描边实现 需求描述 文字显示在图片的上面,图片的内容是不确定了,为了防止文字与图片的颜色相近导致用户看不到或者看不清文字的问题,所以显示文字描边,避免问题. 实现 实现思想 使用T ...

  7. 《http权威指南》读书笔记15

    概述 最近对http很感兴趣,于是开始看<http权威指南>.别人都说这本书有点老了,而且内容太多.我个人觉得这本书写的太好了,非常长知识,让你知道关于http的很多概念,不仅告诉你怎么做 ...

  8. flash中调用XML遇到的中文显示异常问题

    昨天使用flash调用XML文件进行显示时,出现了中文无法显示的问题,记录一下解决方法: 1.字体设置: 一般flash里的动态文本和嵌入文本都是默认的使用Arial字体,这个字体里可能没有中文,所以 ...

  9. python应用-爬取猫眼电影top100

    import requests import re import json import time from requests.exceptions import RequestException d ...

  10. .Net 并发写入文件的多种方式

    1.简介 本文主要演示日常开发中利用多线程写入文件存在的问题,以及解决方案,本文使用最常用的日志案例! 2.使用File.AppendAllText写入日志 这是种常规的做法,通过File定位到日志文 ...