vim的几个常用操作
现在很少会有人用vim来写代码,所以vim更常用在server上面编辑配置文件或者少量代码编辑;
vim操作命令非常之多,如果仅用作一个配置文件的编辑器,掌握几个常用的操作就够了;
常用的操作其实就是 “增删改查”
vim 分两个模式: 命令模式 编辑模式
vim conf.txt
这样进去后默认是处在命令模式,此时只能通过命令来操作删除或者替换等;按 i 键可进入 编辑模式;
编辑模式下 你就可以想普通文本编辑器一样 编辑 删除 插入等 ;
编辑完后,通过 esc 返回命令模式 ;
敲入命令 :wq (w保存q退出,看清楚有冒号),也可以 :w 只保存不退出; :q! 退出不保存;
貌似在编辑模式下其实就可以完成我们的日常编辑工作了;
先别高兴,比如我打开的文件有1万行代码,现在要查找一个叫 myfunction 的函数 ;
/myfunction 查找myfunctin字符串,n查找下一个 N 上一个
所以很多操作还是需要切换到命令模式来用
常用的:
:set number 临时设置显示 行号
:n 跳转到 第n行
v 自由选择区块
V 以行为单位选择区块
ctrl+v 矩阵选择 (多行注释时有用)
yy 复制一行
y 复制选定区块
dd 剪切一行
d 剪切选定区块
p 粘贴到光标之后
P 粘贴到光标之前
:%s/myfunction/myfun/g 替换文件中所有 myfunction 为 myfun
:%s/myfunction/myfun/gc 每次替换都需要确认
u 撤销
ctrl+r 重做
/myfunction 查找
$ 跳到一行的末尾,有时候遇到一行有很长话没有换行
多行注释:ctrl+v 光标移动到最左边第一列前,上下移动选择多行,按大写 I ,此时进入插入模式,光标此时应该在
最左边列前面,输入 #,然后按两下 esc ,此时每一行前面都自动加上了 #;区块注释只能用 ctrl+v选择区块;
不能用 v和V方式选;
最后温馨提示,以上内容讲的是vim不是vi;先确保你当前server是否自带vim(基本上所有 unix都是自带vi的 ,但是不一定带vim),vi和vim是有一些区别的,并不完全一样;比如在vim里面你可以正常使用上下左右几个键;但是在vi里面 按上下左右可能会出现莫名其妙的大写字母加换行,在vi里面使用
hjkl这四个键控制 左下上右 ;
vim的几个常用操作的更多相关文章
- vim 打开文件的常用操作
一.如果在终端中开没有打开vim,可以: 横向分割显示: $ vim -o filename1 filename2 纵向分割显示: $ vim -O filename1 filename2 二.如果已 ...
- vim常用操作技巧与配置
vi是linux与unix下的常用文本编辑器,其运行稳定,使用方便,本文将分两部分对其常用操作技巧和配置进行阐述,其中参考了网上的一些文章,对作者表示感谢 PART1 操作技巧 说明: 以下的例子中 ...
- [编辑器]vim常用操作
我是ide的用户,对于vim一只停留在:打开.看.写.关闭基本操作,因为现在更多的接触linux服务器,所以为了提高 效率,用好vim是必备技能!下面罗列一些vim的常用操作,用做备忘(不断更新): ...
- 关于vim的常用操作
vim常用操作和使用技巧 vi是linux与unix下的常用文本编辑器,其运行稳定,使用方便,本文将分两部分对其常用操作技巧和配置进行阐述,其中参考了网上的一些文章,对作者表示感谢 PART1 操作技 ...
- vim常用操作和使用技巧
vi是linux与unix下的常用文本编辑器,其运行稳定,使用方便,本文将分两部分对其常用操作技巧和配置进行阐述,其中参考了网上的一些文章,对作者表示感谢 PART1 操作技巧 说明: 以下的例子中 ...
- (转)vim(vi)常用操作及记忆方法
vim(vi)常用操作及记忆方法 原文:https://www.cnblogs.com/doseoer/p/6241443.html vi(vim)可以说是linux中用得最多的工具了,不管你配置服务 ...
- VIM常用操作手册
VIM常用操作手册 1.多行操作,多行注释,多行取消注释 https://jingyan.baidu.com/article/9c69d48f43ed6d13c8024e7b.html 2.常用操作 ...
- Linux下Vim常用操作
linux下Vim的常用操作 linux 首先\(ctrl+Alt+t\)打开小框框 \(./\):相当于手机上的\(home\)键 \(ls\):当前文件夹的东东 \(mkdir\) ...
- vim程序编辑器---常用操作整理
vim程序编辑器---常用操作整理 移动光标方法 o 在光标行的下一行,进入编辑模式 $ 移动到光标这行,最末尾的地方 G(大写) 移动到文件最末行 :set nu 文件显示行数 :set non ...
随机推荐
- python之type函数
python 的type 函数 的介绍的 下面就是此函数的参数 三个参数的意义 '''type(class_name, base_class_tuple, attribute_dict)cla ...
- 测试工具使用-Qunit单元测试使用过程
031302620 应课程要求写一篇单元测试工具的博客,但是暂时没用到java,所以不想使用junit(对各种类都不熟悉的也不好谈什么测试),原计划是要用phpunit,但是安装经历了三个小时,查阅各 ...
- WPF PasswordBox不支持绑定解决方法
原文:WPF PasswordBox不支持绑定解决方法 PasswordBox的Password属性因为安全原因不支持直接绑定,可以使用依赖属性实现.直接插入代码 public class Passw ...
- 自己写一个分页PageHelper
每次写分页导航的时候都要在html页面写一堆标签和样式,太麻烦了,所以干脆自己动手封装一个自己喜欢的类直接生成. 一.PageHelper类: /// <summary> /// 分页导航 ...
- ASp.Net Mvc Core 重定向
在之前老版本的MVC中.重定向直接写 HttpContext.Response.Redirect("/404.html") 就好了,程序走到这里会自动返回302然后跳转了, 但是这 ...
- .net core jwt
https://www.cnblogs.com/JacZhu/p/6837676.html
- 图解SSH原理及两种登录方法
SSH(Secure Shell)是一套协议标准,可以用来实现两台机器之间的安全登录以及安全的数据传送,其保证数据安全的原理是非对称加密. 传统的对称加密使用的是一套秘钥,数据的加密以及解密用的都是这 ...
- Windows Community Toolkit 4.0 - DataGrid - Part01
概述 在上面一篇 Windows Community Toolkit 4.0 - DataGrid - Overview 中,我们对 DataGrid 控件做了一个概览的介绍,今天开始我们会做进一步的 ...
- Python全栈开发之路 【第十七篇】:jQuery的位置属性、事件及案例
位置属性 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <titl ...
- openstack-KVM-Memory
一.Memory 1.查看memory信息 free -g cat /proc/meminfo dmesg | grep Memory 2.xml文件中的内存信息: vim /etc/libvirt/ ...