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 学习参考手 ...
随机推荐
- Eat Style --proposed by Chongyang Bai
NEED 1. 有人希望妈妈是这样的: 但实际上对妈妈做的菜反应确是这样的: 处在不同的时节,根据不同的个人偏好,到底该做些什么饭菜?工作繁忙,家里的厨师可能也没时间琢磨.最后做出的只是应付差事的饭菜 ...
- [转帖]VMware Vsphere 6.0安装部署 (一) 总体部署架构
(一)总体部署架构本教程用于学习目的,力求详尽的介绍安装部署过程和各组件之间的关系,部署过程从最简单的模型开始,系列文章按时间顺序依次展开,每篇介绍一个组件. 开始阶段,按照一台物理服务器,部署所有V ...
- Redis的相关问题总结
一.Redis的优缺点及适用场景 Redis 是一个基于内存的高性能key-value数据库.很像memcached,整个数据库统统加载在内存当中进行操作,定期通过异步操作把数据库数据flush到硬盘 ...
- PSP(3.16——3.22)以及周记录
3.17 13:30 14:45 15 60 讨论班 A Y min 14:50 17:05 5 130 得到设备 Cordova 蓝牙连接 A Y min 23:15 23:45 5 25 英语百词 ...
- MySQL查询where条件的顺序对查询效率的影响
看到有资料说,where条件的顺序会影响查询的效率,根据的逻辑是: where条件的运行是从右到左的,将选择性强的条件放到最右边,可以先过滤掉大部分的数据(而选择性不强的条件过滤后的结果集仍然很大), ...
- mysql 分组取每个组的前几名的问题
select *from hotel_addition_orders awhere (select count(*) from hotel_addition_orders where hotel_or ...
- [转]Robotium环境搭建中的Errors running builder 'Android Resource Manag
转自:http://blog.sina.com.cn/s/blog_68f262210102v75t.html 最近学习了Robotium测试框架,当然学习任何一个框架或是语言之前,第一步就是搭建环境 ...
- kubernetes 的pod控制器
转载于网络 pod是kubernetes的最小单元,自主式创建的pod删除就没有了,但是通过资源控制器创建的pod如果删除还会重建.pod控制器就是用于实现代替我们去管理pod的中间层,并帮我们确 ...
- Scala进阶之路-高级数据类型之集合的使用
Scala进阶之路-高级数据类型之集合的使用 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. Scala 的集合有三大类:序列 Seq.集 Set.映射 Map,所有的集合都扩展自 ...
- 手机安全卫士-——Splash总结
1.在AndroidManifest.xml文件的application中配置,应用的主题:不带标题的主题 android:theme="@android:style/Theme.Black ...