快乐的Linux命令行笔记-vim入门
第一天的笔记-基本的命令和使用方法
第二天的笔记-操作文件
第三天的笔记-查阅命令文档并创建命令别名
第四天的笔记-重定向标准输入和输出以及处理查询结果
第五天的笔记-命令的展开
第六天的笔记-快捷键
第七天的笔记-文件权限
第八天的笔记-进程
第九天的笔记-修改shell环境
总结
今天主要学习了vim的一些快捷操作。
vim
vim编译器的一些快捷键
| 快捷键 | 意义 |
|---|---|
| :q | 退出 |
| :q! | 强制退出 |
| :i | 进入输入模式 |
| : w | 保存 |
在非编辑模式下的快捷键
| 快捷键 | 意义 |
|---|---|
| l / 右箭头 | 向右移动一格 |
| h / 左箭头 | 向左移动一格 |
| j / 上箭头 | 向上移动一格 |
| k / 下箭头 | 向下移动一格 |
| 0 (零) | 移动到行首 |
| ^ | 移动到当前行的第一个非空字符 |
| $ | 移动到当前行的末尾 |
| w | 移动到下一个单词或标点符号的开头 |
| W | 移动到下一个单词的开头, 忽略标点符号 |
| b | 移动到上一个单词或标点符号的开头 |
| B | 移动到上一个单词的开头, 忽略标点符号 |
| ctrl - f / pagedown | 向下翻一页 |
| ctrl -b / pageup | 向上翻一页 |
| numberG | 移动到指定行, 例如: 2G : 移动到第二行 |
| G | 移动到文件末尾 |
不是只有
G命令支持前面加数字,5j会将光标向下移动5行
进入编辑模式的一些快捷键
| 快捷键 | 意义 |
|---|---|
| a | 光标向后一格进入编辑模式 |
| A | 在行尾进入编辑模式 |
| o | 在当前行的下一行进入编辑模式 |
| O | 在当前行的下一行进入编辑模式 |
| u | 撤销更改 |
删除文本的一些快捷键
| 快捷键 | 意义 |
|---|---|
| x | 当前字符 |
| 3x | 当前字符以及后面两个字符 |
| dd | 剪切当前行 |
| 5dd | 剪切从当前行以及随后的四行文本 |
| dW | 剪切从光标开始到下一个单词的开头 |
| d$ | 剪切从光标开始到当前行的结尾 |
| d0 | 剪切从光标开始到当前行的行首 |
| d^ | 剪切从光标开始到当前行的第一个非空字符 |
| dG | 剪切从当前行到文件的末尾 |
| d20G | 剪切从当前行到文件的第20行 |
剪切, 复制和粘贴
| 命令 | 意义 |
|---|---|
| yy | 复制当前行 |
| 5yy | 复制当前行以及随后的4行文本 |
| yW | 复制从当前光标位置到下一个单词的开头 |
| y$ | 复制从当前光标位置到当前行的末尾 |
| y0(零) | 复制从当前光标到当前行首 |
| y^ | 复制从当前光标位置到文本行的第一个非空字符 |
| yG | 复制从当前光标位置到文件末尾 |
| y20G | 从当前行到文件的20行 |
| p | 粘贴到当前光标位置 |
| P | 粘贴到当前行之上 |
连接行于行
J 连接当前行和下一行为一行
查找和替换
在当前行中进行查找
fsearch key 例如: fa 会搜索当前行从光标位置开始的字母a
查找整个文件
输入 / , 接着输入要查找的字符并按下回车, 使用 n 命令来查找下一个匹配的字符
1 | |
- %s 代表需要操作的范围是从第一行到最后一行, 如果是第m行到第n行则可以这样: m,n
- /The 代表需要被替换的字符
- /the 代表替换的字符
- /g 代表全局搜索
1 | |
该命令和上面意义一样, 只是每次替换之前, 都会先进行确认, 确认的方式包括:
| 按键 | 行为 |
|---|---|
| y | 执行替换操作 |
| n | 跳过这个匹配的实例 |
| a | 对当前及所有以后匹配的字符串都进行匹配操作 |
| q / esc | 退出替换操作 |
| l | 执行这次替换并退出 |
| ctrl-e, ctrl-y | 向上滚动, 向下滚动, 查看当前匹配字符的上下文 |
同时编辑多个文件
1 | |
:n切换到下一个文件:N切换到上一个文件
如果当前文件修改后没有保存, 则不能切换, 可以先保存, 再切换, 也可以直接 !n 强制切换, 不保存
1 | |
显示所有编辑的文件列表, 也可以直接切换第n个文件: :buffer n
在vim编辑器中打开另一个文件
1 | |
如果使用 :e 命令打开的文件, 则不能使用 :n 和 :N 来切换文件, 只能通过 :buffer 命令来切换
将指定文件插入到另一个文件中
在已经使用vim打开一个文件中的情况下:
1 | |
将file2.txt的所有内容插入到光标所在位置。
保存文件
ZZ 注意是大写, 会保存并退出当前文件
1 | |
将当前文件保存为other.txt文件, 但是编辑则还是编辑当前文件。
快乐的Linux命令行笔记-vim入门
http://icecreamzhao.github.io/note/read_note/The_Linux_Command_Line/The-Linux-Command-Line-read-note-10Day.html