常用vim编辑器命令行
按ESC键 跳到命令模式,然后: :w 保存文件但不退出vi
:w file 将修改另外保存到file中,不退出vi
:w! 强制保存,不推出vi
:wq 保存文件并退出vi
:wq! 强制保存文件,并退出vi
q: 不保存文件,退出vi
:q! 不保存文件,强制退出vi
:e! 放弃所有修改,从上次保存文件开始再编辑
游标控制
| 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 | 移动在最后一行 |
内容编辑
A:当前行的尾部追加内容
i:游标前插入内容
I:游标后插入内容
o:在鼠标所在行的下面添加内容
O:在鼠标所在行的上面添加内容
ESC:退出编辑模式
Ctrl-T:移动到下一个tab
Backspace:向后移动一个字符
Ctrl-U:删除当前
cw:删除游标所在的字符,然后进入编辑模式
cc:删除游标所在的行,然后进入编辑模式
C:删除从游标所在的位置到行尾的字符,然后进入编辑模式
dd:删除当前行
ndd:删除第n行
D:删除当前行游标所在的位置后面的字符
dw:删除邮编所在的字符
d}:删除当前段剩余的字符
d^:删除游标前到行首的字符
c/pat:删除游标后面到第一次匹配字符间的内容
dn:删除游标后面到下一个匹配字符间的内容
dfa:删除当前行游标到匹配字符间的内容(匹配的字符也将被删)
dta:删除当前行游标到匹配字符间的内容(匹配的字符不被删)
dL:删除从游标到屏幕的最后一行之间的内容
dG:删除从游标到文件末尾之间的内容
J:连结上下两行的内容
p:在游标后面插入buffer中的内容
P:在游标前面插入buffer中的内容
rx:用x替换字符
Rtext:用text从游标开始处进行替换
u:撤销最后的改变
U:还原当前行的内容
x:向后删除游标所在位置的字符
X:向前删除游标前面的字符
nX:删除前面的n个字符,游标所在的字符将不会被删
.:还原最后的改变
~:反转字母的大小写
y:拷贝当前行到新的buffer
yy:拷贝当前行
"xyy:拷贝当前行的buffer名为x的buffer
ye:拷贝当单词的末尾
文件操作
| :w | 写文件 | ||
| :w! | 写文件,忽略警告信息 | ||
| :w! file | 覆盖文件,忽略警告信息 | ||
| :wq | 写文件之后退出编辑 | ||
| :q | 退出编辑器 | ||
| :q! | 强制退出编辑器 | ||
| :w file | 把文件的内容写到另一个文件 | ||
| ZZ | 退出编辑器,如果文件有改动,则保存再退出 | ||
| :x | 退出编辑器,如果文件有改动,则保存再退出 | ||
| :n1,n2w file | 把n1行到n2行间的内容写到文件file | ||
| :n1,n2w >> file | 把n1行到n2行间的内容追加到文件file | ||
| :e file2 | 在当前文件的命令行模式下编辑file2 | ||
| :e! | 重新从磁盘加载文件 | ||
| :e# | 交替编辑文件 | ||
| :n | 编辑地下一行 | ||
| :n! | 编辑地下一行(忽略警告) | ||
| :r file | 在游标后面插入文件 | ||
| :r !command | 在当前行的后面,插入运行命令后的输出内容 | ||
常用vim编辑器命令行的更多相关文章
- 常用vi编辑器命令行
游标控制: h 游标向左移 j 游标向下移 k 游标向上移 l(or spacebar) 游标向右移 w 向前移动一个单词 b 向后移动一个单词 e 向前移动一个单词,且游标指向单词的末尾 ( 移到当 ...
- vim编辑器显示行号
Vim编辑器显示行号的设置 1. 显示行号 :set nu 2. 不显示行号 :set nonu :set nu :set nonu
- 测试常用的Oracle11G 命令行指令。
测试常用的Oracle11G 命令行指令. ×××××××××××××××× 登录:
- vim编辑器-多行加注释与去注释
在使用vim编辑器时,有时候需要对多行代码进行加注释或去注释,下面将介绍两种方法. 方法一:块选择模式 1. 插入注释 (1)首先按键盘上的ESC进入命令行模式 (2)再按Ctrl+V进入VISUAL ...
- 11.vim编辑器命令
VI中的多行删除与复制 方法一: 单行删除,:1(待删除行)d 多行删除 ,:1,10d 方法二: 光标所在行,dd 光标所在行以下的N行,Ndd 方法1: 光标放到第6行, 输入:2yy ...
- LINUX常用操作命令和命令行编辑快捷键
终端快捷键: Ctrl + a/Home 切换到命令行开始 Ctrl + e/End 切换到命令行末尾 Ctrl + l 清除屏幕内容,效果等同于clear Ctrl + u 清除剪切光标之前的内容 ...
- VIM - ex 命令行的窗口切换
1. 概述 操作 vim 同时编辑多个文件 约定 ctrl 使用按键 ctrl + w 时, 写作 ^W 思路 我记得这个由两个机制 ex 命令与缓冲区 分屏 2. 场景 文件 file1 file2 ...
- Linux文件浏览(less、more、head、tail)以及vim编辑器命令总结
结合小编学习实践,整理了Linux下查看内容(less.more.head.tail)和编辑内容(vim)的部分基础命令解析: 1.less命令 分页浏览内容,如果在shell命令行下按回车键,则一点 ...
- 常用vi编辑器命令
对于VI的命令行,不需要特意的去记忆,写下来,让要用到的时候能找到就行 游标控制 h 游标向左移 j 游标向下移 k 游标向上移 l (or spacebar) 游标向右移 w 向前移动一个单词 b ...
随机推荐
- SQL 增删字段
摘自: http://www.cnblogs.com/yiwd/archive/2012/12/25/2831822.html 下面为您介绍使用SQL语句如何增加.删除.修改字段,并判断字段是否存在的 ...
- MyEclipse 如何最佳设置
摘自: http://blog.csdn.net/lifuxiangcaohui/article/details/8513561 MyEclipse 如何最佳设置 作为企业级开发最流行的工具,用Mye ...
- tomcat部署java web项目遇到的一些小问题
背景:本人不是Java开发人员,经过四年多的历练,可以说是一枚BI攻城师了吧,最近粗糙的写了一个Portal来集成cognos报表,下面就入正题说一下发布过程中遇到的小问题吧. a:前提:Java w ...
- STL栈的应用之表达式求值
#include<iostream> #include<cstring> #include<cstdio> #include<stack> using ...
- hdu 4983 Goffi and GCD(数论)
题目链接:hdu 4983 Goffi and GCD 题目大意:求有多少对元组满足题目中的公式. 解题思路: n = 1或者k=2时:答案为1 k > 2时:答案为0(n≠1) k = 1时: ...
- 区域医疗移动医疗影像解决方案--基于HTML5的PACS--HTML5图像处理【转】
基于HTML5的PACS--图像伪彩 摘要: 要查看此系统更多的图像处理功能请参考:区域医疗移动医疗影像解决方案--基于HTML5的PACS--HTML5图像处理套用句广告语:哪里不会点哪里,so e ...
- HTML5 <input> required
要求在提交数据之前必须填写该字段,否则会提交不了 <form> <input type="text" id="msg" ...
- Python3.2官方文档翻译--迭代器
6.9 迭代器 到眼下为止.你可能已注意到很多容器对象都能够用for语句进行循环: 这样的訪问风格清楚简洁方便. 迭代器的应用是python遍历统一.在这样的场景背后.for语句调用容器对象iter( ...
- Xcode 生成 ipa包
原地址:http://zengwu3915.blog.163.com/blog/static/2783489720136213239916/ app store的审核收费的需要二周,免费的需要一个月左 ...
- 算法笔记_037:寻找和为定值的两个数(Java)
目录 1 问题描述 2 解决方案 2.1 排序夹逼法 1 问题描述 输入一个整数数组和一个整数,在数组中查找两个数,满足他们的和正好是输入的那个整数.如果有多对数的和等于输入的整数,输出任意一对即 ...