linux中vim使用技巧
2024-09-10 07:13:34
一.导入文件内容
:r
解释
导入文件
示例
编辑模式下
# 将/tmp/test.txt内容导入到光标所在的位置的下一行
:r /tmp/test.txt
:!
解释
在编辑文件时,执行系统命令
示例
编辑模式下
# 查看ls命令的目录
:!which ls
[No write since last change]
/usr/bin/ls
:r !命令
解释
将命令的内容导入文件光标处
示例
# 将ls命令的位置导入到文件中光标的下一行
:r !which ls
二.定义快捷键
定义添加行首添加注释#的快捷建ctrl+p
在命令模式下
:map ^P I#<ESC>
^P ctrl+v+p或者ctrl+v再加上ctrl+p 输入
I 跳到行首,并进入插入模式
<ESC> 退出编辑模式
定义删除行首首个字符的快捷键ctrl+b
在命令模式下
:map ^B 0x
^B ctrl+v+b或者ctrl+v再加上ctrl+b 输入
0 跳到行首
x 删除光标所在处的字符
定义插入邮箱的快捷键ctrl+h
在命令模式下
:map ^H Izhangh0725@163.com<ESC>
三.连续行注释
将n1到n2行全部注释掉
# 将n1行到n2行行首的空位置替换为#,也就是注释了
:n1,n2s/^/#/g
第一个/后面的^代表行首的空位置
第二个/后面的#代表要替换为的#
将n1到n2行行首的注释全部去掉
# 将n1行到n2行行首的#替换为空,也就是去掉了注释
:n1,n2s/^#//g
^ 代表行首的
第二个/后面时空的,代表把行首的#替换为空
/g代表直接替换,不用确认
将n1行到n2行行首添加//
:n1,n2s/^/\/\//g
第一个/^代表的时行首的空位置
第二个/代表的是/后面的为要替换的内容
\/\/代表的是//,其中\为转义符
/g代表直接替换,不用确认
四.替换符
给长字符zhangh0725@163.com定义一个短的容易记忆的字符mmail
:ab mmail zhangh0725@163.com
弊端: 重启之后定义的就失效,所以最好保存起来
五.将vim的快捷方式等保存起来
保存位置
root用户: /root/.vimrc
普通用户(eternity): /home/eternity/.vimrc
配置文件内容
cd /root
vim .vimrc
# 内容
set nu
map ^P I#<ESC>
ab mmail zhangh0725@163.com
第一行 默认设置行号
第二行 ctrl+p为光标的行首添加#并退出插入模式
第三行 将mmail映射为zhangh0725@163.com,输入mmail自动变为zhangh0725@163.com
最新文章
- Neutron 理解 (7): Neutron 是如何实现负载均衡器虚拟化的 [LBaaS V1 in Juno]
- Linux环境下Android开发环境的搭建
- linux kernel 杂谈
- Inspector a ProgressBar(定制属性面板)
- 第三百四十四天 how can I 坚持
- (转载)delphi中获取汉字的拼音首字母
- Linux内存调试工具初探-MEMWATCH
- Linq 内联左联等
- 蓝桥网试题 java 基础练习 时间转换
- Linux系统网卡设置
- Python3 错误和异常
- 用户认证--------------auth模块
- Python基础教程2#练习使用参数的疑难杂点分析
- yaf
- innobackupex 备份 Xtrabackup 增量备份
- luogu P4161 [SCOI2009]游戏
- 应用层级时空记忆模型(HTM)实现对实时异常流时序数据检测
- STM32通用定时器配置
- tag标签数据库的设计
- 团队Alpha冲刺(四)
热门文章
- Treap基本用法总结
- 用Kolla在阿里云部署10节点高可用OpenStack
- python条件与循环-条件
- Creating Custom Helper Methods 创建自定义辅助器方法----辅助器方法 ------ 精通ASP.NET MVC 5
- tarjan缩点练习 洛谷P3387 【模板】缩点+poj 2186 Popular Cows
- 用set、map等存储自定义结构体时容器内部判别各元素是否相同的注意事项
- 事务管理(ACID)
- 计算机原理基础:DNS
- 开源项目SMSS发开指南(五)——SSL/TLS加密通信详解(下)
- constrainlayout布局