文本编辑器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命令学习的更多相关文章

  1. VIM学习一: VIM命令学习及插件介绍

    一.光标移动及编辑命令(含查找替换) [打开关闭窗口] :e file或:open file       打开新文档 :q或者ctrl+w+q         关闭当前视图的窗口 :tab split ...

  2. vim 命令学习(高级篇)

    [1]打开文件方式 (1)vim +n filename 作用:打开文件,并定位到第n行 例如:vim +103 2019-02-26-errorrepeat.txt 效果:打开2019-02-26- ...

  3. 系统自带vim命令学习教程

    [环境] [干货分享] vim或者vi命令在很多linux环境中自带一款学习教程,其教程说明语言还是随系统变化. 输入vimtutor这个命令会打开一款学习神器. 打开之后显示如下,vimtutor一 ...

  4. vim 命令学习(基础篇)

    [1]三种模式 vi的三种模式:命令模式.末行模式.编辑模式. 三种模式相互切换逻辑与命令图: 1.命令模式是vi的默认模式(即每打开一个文件时的初始模式). 2.命令模式切换至末行模式,末行模式切换 ...

  5. 学习vim命令:“:w !sudo tee %”

    学习vim命令:“:w !sudo tee %” Original URL:http://www.haw-haw.org/node/1501 原文来自于commandlinefu 原文是这样解释这个命 ...

  6. 学习 Vim 命令总结

    学习 Vim 命令总结 可以使用 vscode-vim 扩展,但是要注意一些ctrl+字母的快捷键会无效,必须去掉冲突的快捷键 esc 回到普通模式 i 普通模式进入插入模式 : 进入命令模式 :wa ...

  7. 别出心裁的Linux命令学习法

    别出心裁的Linux命令学习法 操作系统操作系统为你完成所有"硬件相关.应用无关"的工作,以给你方便.效率.安全.操作系统的功能我总结为两点:管家婆和服务生: 管家婆:通过进程.虚 ...

  8. Linux常用命令学习6---(vim的使用)

    先说说我,我使用了这么久的vim,但是完全没有将vim的功能完全利用到,无非就是使用了编辑(i).保存(:w).退出(:q).等简单的编辑,命令,以及NerdTree这一个插件,所以在这里需要重新学习 ...

  9. Git版本控制软件结合GitHub从入门到精通常用命令学习手册(转)

    简要参考:http://www.tuicool.com/articles/mEvaq2 http://gitref.org/zh/index.html GIT 学习手册简介 本站为 Git 学习参考手 ...

随机推荐

  1. 淘宝店铺模板开发SDK2.0下载安装图文教程

    使用TortoiseSVN Checkout TAE SDK2.0 废话少说,切入主题: 1.在http://tortoisesvn.net/downloads.html上下载TortoiseSVN ...

  2. PHP操作Redis数据库常用方法

    Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API. Redis支持的数据类型有 Stirng(字符串), Lis ...

  3. day1——js方法关键字的问题(onclick点了没反应)

    <a href="javascript:void(0);"   onclick="search();" >提交</a> js代码: fu ...

  4. Redis4.0新特性之-大KEY删除

    接上一篇,我们得知了redis中存在大KEY,那么这个大KEY如何删除呢?本文将从源码角度分析Redis4.0带来的新特性. 在Redis中,对于大KEY的删除一直是个比较头疼的问题,为了不影响服务, ...

  5. ZOJ1100 Mondriaan's Dream

    题目链接:QAQ 大致题意:有一个m行n列的矩阵,用1*2的骨牌(可横放或竖放)完全覆盖,骨牌不能重叠,有多少种不同的覆盖的方法? Solution: \(n,m\le11\),肯定是不能暴力的,又类 ...

  6. LOJ#2983. 「WC2019」数树

    传送门 抄题解 \(Task0\),随便做一下,设 \(cnt\) 为相同的边的个数,输出 \(y^{n-cnt}\) \(Task1\),给定其中一棵树 设初始答案为 \(y^n\),首先可以发现, ...

  7. word 大纲-目录

  8. centos6 pyenv和virtualenv搭建python虚拟环境

    安装pyenv 基础环境软件包安装 yum -y install gcc gcc-c++ make git patch openssl-devel zlib-devel readline-devel ...

  9. bzoj千题计划262:bzoj4868: [六省联考2017]期末考试

    http://www.lydsy.com/JudgeOnline/problem.php?id=4868 假设 最晚出成绩的是第i天 预处理 cnt[i] 表示 有多少个学生 期望出成绩的那一天 &l ...

  10. bzoj千题计划256:bzoj2194: 快速傅立叶之二

    http://www.lydsy.com/JudgeOnline/problem.php?id=2194 相乘两项的下标 的 差相同 那么把某一个反过来就是卷积形式 fft优化 #include< ...