vim命令学习
文本编辑器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# ^是ctrl+v,p定义快捷键,I看上面的命令可以知道I表示在光标所在行行首插入#,ESC表示按下esc。 下次运行ctrl+p就可以了。也就是添加第一行注释
:map ^B 0x ctrl+b 设置为快捷键,0跳到行首,x删除光标下的第一个字符。 也就是删除第一行注释
连续行注释
:n1,n2s/^/#/g ^表示行首,#表示替换成#,g表示替换后不确认
:n1,n2s/^#//g 替换开头为#的字符为空,也就是删除开头为#的。
:n1,n2s/^////g 在/前加转移字符
:ab qq 1598828268@qq.com 在文件中敲击qq然后回车或者空格,就会输入后面的字符串。非常的方便。
vim命令学习的更多相关文章
- VIM学习一: VIM命令学习及插件介绍
一.光标移动及编辑命令(含查找替换) [打开关闭窗口] :e file或:open file 打开新文档 :q或者ctrl+w+q 关闭当前视图的窗口 :tab split ...
- vim 命令学习(高级篇)
[1]打开文件方式 (1)vim +n filename 作用:打开文件,并定位到第n行 例如:vim +103 2019-02-26-errorrepeat.txt 效果:打开2019-02-26- ...
- 系统自带vim命令学习教程
[环境] [干货分享] vim或者vi命令在很多linux环境中自带一款学习教程,其教程说明语言还是随系统变化. 输入vimtutor这个命令会打开一款学习神器. 打开之后显示如下,vimtutor一 ...
- vim 命令学习(基础篇)
[1]三种模式 vi的三种模式:命令模式.末行模式.编辑模式. 三种模式相互切换逻辑与命令图: 1.命令模式是vi的默认模式(即每打开一个文件时的初始模式). 2.命令模式切换至末行模式,末行模式切换 ...
- 学习vim命令:“:w !sudo tee %”
学习vim命令:“:w !sudo tee %” Original URL:http://www.haw-haw.org/node/1501 原文来自于commandlinefu 原文是这样解释这个命 ...
- 学习 Vim 命令总结
学习 Vim 命令总结 可以使用 vscode-vim 扩展,但是要注意一些ctrl+字母的快捷键会无效,必须去掉冲突的快捷键 esc 回到普通模式 i 普通模式进入插入模式 : 进入命令模式 :wa ...
- 别出心裁的Linux命令学习法
别出心裁的Linux命令学习法 操作系统操作系统为你完成所有"硬件相关.应用无关"的工作,以给你方便.效率.安全.操作系统的功能我总结为两点:管家婆和服务生: 管家婆:通过进程.虚 ...
- Linux常用命令学习6---(vim的使用)
先说说我,我使用了这么久的vim,但是完全没有将vim的功能完全利用到,无非就是使用了编辑(i).保存(:w).退出(:q).等简单的编辑,命令,以及NerdTree这一个插件,所以在这里需要重新学习 ...
- Git版本控制软件结合GitHub从入门到精通常用命令学习手册(转)
简要参考:http://www.tuicool.com/articles/mEvaq2 http://gitref.org/zh/index.html GIT 学习手册简介 本站为 Git 学习参考手 ...
随机推荐
- 淘宝店铺模板开发SDK2.0下载安装图文教程
使用TortoiseSVN Checkout TAE SDK2.0 废话少说,切入主题: 1.在http://tortoisesvn.net/downloads.html上下载TortoiseSVN ...
- PHP操作Redis数据库常用方法
Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API. Redis支持的数据类型有 Stirng(字符串), Lis ...
- day1——js方法关键字的问题(onclick点了没反应)
<a href="javascript:void(0);" onclick="search();" >提交</a> js代码: fu ...
- Redis4.0新特性之-大KEY删除
接上一篇,我们得知了redis中存在大KEY,那么这个大KEY如何删除呢?本文将从源码角度分析Redis4.0带来的新特性. 在Redis中,对于大KEY的删除一直是个比较头疼的问题,为了不影响服务, ...
- ZOJ1100 Mondriaan's Dream
题目链接:QAQ 大致题意:有一个m行n列的矩阵,用1*2的骨牌(可横放或竖放)完全覆盖,骨牌不能重叠,有多少种不同的覆盖的方法? Solution: \(n,m\le11\),肯定是不能暴力的,又类 ...
- LOJ#2983. 「WC2019」数树
传送门 抄题解 \(Task0\),随便做一下,设 \(cnt\) 为相同的边的个数,输出 \(y^{n-cnt}\) \(Task1\),给定其中一棵树 设初始答案为 \(y^n\),首先可以发现, ...
- word 大纲-目录
- centos6 pyenv和virtualenv搭建python虚拟环境
安装pyenv 基础环境软件包安装 yum -y install gcc gcc-c++ make git patch openssl-devel zlib-devel readline-devel ...
- bzoj千题计划262:bzoj4868: [六省联考2017]期末考试
http://www.lydsy.com/JudgeOnline/problem.php?id=4868 假设 最晚出成绩的是第i天 预处理 cnt[i] 表示 有多少个学生 期望出成绩的那一天 &l ...
- bzoj千题计划256:bzoj2194: 快速傅立叶之二
http://www.lydsy.com/JudgeOnline/problem.php?id=2194 相乘两项的下标 的 差相同 那么把某一个反过来就是卷积形式 fft优化 #include< ...