登山则情满于山,观海则意溢于海。这篇文章主要讲述linux中vi,vim操作技巧相关的知识,希望能为你提供帮助。
配置vim
/etc/vimrc
配置项全局生效,对所有用户生效.vimrc
家目录下,只针对某个用户生效
>
vim /etc/vimrc
set number#显示行号
set autoindent #自动缩进
set nowarp#不换行
退出
vim
编辑器保存退出
>
vim rumenz.txt
123
:wq
直接退出
>
vim rumenz.txt
123
:q
删除一行或者多行
dd
:输入两次dd
删除当前行。3dd
:从当前行开始删除3行。dG
:(先输入d,然后按 shift 键输入 g)删除当前行至最后一行的所以行。
- 按 Esc 切换到正常模式;
- 把光标移到你需要复制的代码行首;
- 按 V 选择整行,可移动光标选择多行;
- 按 d 剪切或按 y 复制选择的代码;
- 移动光标到你需要粘贴的位置,按 p 粘贴代码到光标后的位置,或按 P 粘贴到光标前。
代码注释
代码注释
- 按 Ctrl+v 切换到可视化模式;
- 移动光标(j 或 k)选中需要注释的行的开头;
- 按大写 I,然后输入注释符,如 #;
- 最后按 Esc。
- 按 Ctrl+v 切换到可视化模式;
- 按 j 或 k 选择要删除的注释符;
- 按 d 或 x 删除注释符
>
vim rumenz.txt/rumenz
把外部文件读入vim
>
vim rumenz.txt:read readme.md
把命令的结果读入vim
:read !pwd
### 切换到上次修改的位置>
想知道你在文件中做的最后一次修改是在什么位置?切换到正常模式,输入 g;
来即可切换到上次修改的位置。### 移动到文件顶部或者尾部>
切换到正常模式,输入 gg 返回文件顶部,输入 G 返回文件底部。### 切换到当前行的行首或者行尾>
正常模式,输入`$`跳到当前行的行尾。输入`0`跳到当前行的行首。### vim中以16进制查看文件>
正常模式下,输入`:%!xxd`会把当前文本转换成16进制
>
vim rumenz.txt
123
:%!xxd -r
大小写敏感查找
>
vim rumenz.txt
123
/rumenz \\c
查找与替换
:{作用范围}s/{目标}/{替换}/{替换标志}
替换当前行 把当前行所有的rumen全部替换成rumenz
:s/rumen/rumenz/g
只把当前行第一次出现的rumen替换成rumenz
:s/rumen/rumenz/
全局替换 把所有的rumen替换成rumenz
:%s/rumen/rumenz/g
只把每一行第一次出现的rumen替换成ruemnz
:%s/rumen/rumenz/
5到10行替换 5到10行所有的rumen都替换成rumenz
:5,10s/rumen/rumenz/g
5到10行每一行第一次出现rumen的替换成rumenz
:5,10s/rumen/rumenz/
当前行与接下来3行
rumen
全部替换
:.,+3s/rumen/rumenz/g
每一行后面追加
123
:%s/$/123/
每一行前面加
#
,添加注释:%s/^/#/
删除每一行开头的
#
,删除注释:%s/^#//
【linux中vi,vim操作技巧】原文链接:https://rumenz.com/rumenbiji/linux-vi-vim-skills.html
微信公众号:入门小站
推荐阅读
- CAN总线调试
- [python] 狄克斯特拉算法
- 面试官(MySQL 是如何执行一条查询语句的())
- 输入输出重定向
- Redis中的String类型16个常用方法(图文例子)
- java 从零开始手写 RPC (05) reflect 反射实现通用调用之服务端
- windows 10升级后出现网格图标显示一个地球状态
- 干货数据产品经理如何快速了解业务
- WP分类项的Single.php模板