文本编辑器vim
vim常用操作
vim是一个强大的全屏幕文本编辑器,是Linux上最常用的文本编辑器,它的作用是建立,编辑,显示文本文件。
vim没有菜单,只有命令。
输入a或i或o进入编辑命令,下方显示insert。按esc返回命令模式。
:wq保存退出
:q! 不保存退出。
下面通过表格的方式罗列处其命令的使用以及作用。
常用命令
| 命令 | 作用 |
|---|---|
| a | 光标所在字符后 |
| A | 在光标所在行尾插入 |
| i | 在光标所在字符的前插入 |
| I | 在光标所在行行首插入 |
| o | 在光标下插入新行 |
| O | 在光标上插入新行 |
| :set nu | 显示行号 |
| :set nonu | 取消行号 |
| gg | 到第一行 |
| G | 到最后一行 |
| nG | 到第n行,例如4G到第四行 |
| :n | 到第n行 |
| $ | 在一行里移至行尾 |
| 0 | 移至行首 |
删除命令
终于不用一个一个字符删了(dd删除当前行)!一脸辛酸泪啊
| 命令 | 作用 |
|---|---|
| x | 删除光标所在处字符 |
| nx | 删除光标所在处后n个字符 |
| dd | 删除光标所在行,ndd删除n行。 |
| dG | 删除光标所在行到文件末尾内容 |
| D | 删除光标所在处到行尾内容 |
| :n1,n2d | 删除指定范围的行,:12,:22然后按d就可以删除12到22行了 |
剪切复制命令
| 命令 | 作用 |
|---|---|
| yy | 复制当前行 |
| nyy | 复制当前行一下n行 |
| dd | 剪切当前行 |
| ndd | 剪切当前行以下n行 |
| p,P | 粘贴在当前光标所在 |
替换和取消命令
| 命令 | 作用 |
|---|---|
| r | 取代光标所在处字符 |
| R | 从光标所在处开始替换字符按ESC结束 |
| u | 取消上一步操作,就是ctrl+z的感觉 |
搜索和搜索替换命令
| 命令 | 作用 |
|---|---|
| /string | 搜索指定字符串,例如/db,搜索db,搜索忽略大小写:set ic |
| n | 搜索指定字符串的下一个出现的位置 |
| :%s/old/new/g | 全文替换指定字符串,例如:%s/db/db1/g |
| :n1,n2s/old/new/g | 在一定范围内替换指定的字符串 |
:替换范围
%s 全文替换
:n 起始行
保存和退出
| 命令 | 作用 |
|---|---|
| :w | 保存修改 |
| :w newfilename | 另存为指定文件 |
| :wq | 保存修改并退出 |
| ZZ | 快捷键,保存修改退出 |
| :q! | 不保存退出 |
| :wq! | 保存修改并退出(root用户强制退出的情况) |
ll 查看文件
chmod u+x 修改权限
继续使用:wq!,强行保存。
使用技巧
:r 文件名,在vim打开指定文件 例如:r /etc/issue
:r !date 把命令的执行结果导入vim
定义快捷键
map 快捷键 触发命令
:map ^P I#
:map ^B 0x ctrl+b 设置为快捷键,0跳到行首,x删除光标下的第一个字符。 也就是删除第一行注释
连续行注释
:n1,n2s/^/#/g ^表示行首,#表示替换成#,g表示替换后不确认
:n1,n2s/^#//g 替换开头为#的字符为空,也就是删除开头为#的。
:n1,n2s/^////g 在/前加转移字符
:ab qq 1598828268@qq.com 在文件中敲击qq然后回车或者空格,就会输入后面的字符串。非常的方便。