关于 vi && vim 的一些用法

Linux vi/vim 简单的来说, vi 是老式的字处理器,不过功能已经很齐全了,但是还是有可以进步的地方。此状态下敲击键盘动作会被 Vim 识别为命令,而非输入字符,比如我们此时按下 i,并不会输入一个字符,i 被当作了一个命令。在编辑模式当中,你可以发现在左下角状态栏中会出现 –INSERT- 的字样,那就是可以输入任意字符的提示。就能够进入 vi 的一般模式了。这个按键之外,其他的按键都可以视作为一般的输入按钮了,所以你可以进行任何的编辑。vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计。 阅读详情

好久不写博客了,距离上一篇差不多快一年了,这可真不是个好现象。

这两天闲一点,继续写起来。

 

今天来写一点自己在运用vi&&vim过程中的经验和体会,以下的内容基本都是本人实际使用过的。今后如果用到了什么新鲜玩意儿,再加进来。

写的比较简单,都是追求自己能看懂就行,奉行拿来主义的恐怕要实际操作和查资料才能明白了。

 

基本操作:(简单列举下,不多说了)

w、q、wq、q!、w!,

i、d

insert、delete、Backspace、pageup、pagedown、home、end、tab等等键盘上的几个键,用法不多说了。

 

g,文档开头

G,文档结尾

 

查找:

/,单斜杠,查找

n,下一个

N,或者是ctrl+n,上一个

 

撤销与恢复:

u,撤销这一步操作,多按几次就多撤几步,哈哈哈。

Ctrl + r, 撤销之撤销,也可以说是恢复吧,按u之后,再按这个Ctrl + r 可以抵消u的效果。

恩,我也只能解释这么多了,懂的自然懂。

 

替换:(我个人一般不倾向于用全局的替换,一般都是一个个的找出来替换掉,防止替换了什么不该换的东西)

用/查找到某一行或者光标放在某一行,然后输入

:s/${old}/${new}      这里解释一下${old}代表准备被替换的字符串,${new}代表用来替换的字符串

这条命令的作用只是替换当前行的首个目标字符串。替换本行全部目标字符串,需要用:s/${old}/${new}/g,我猜这个g应该是global的意思。

实际上这条命令还能实现删除指定字符的功能,只要把${new}设为空就好。

 

多选:

v,可以选中一行中的多个字符串或者整行,或者多行,甚至全文。

然后可以进行删除或者格式化的操作。

如果不是删除或者格式化的操作,而是按下了y, 那么选中的这段,可以粘贴在同一个编辑器的别的地方,记住,是同一个编辑器。

Ctrl + v,多选列,选中多个列然后下拉,可以对选中区域删除或修改。

 

删除:

d,删除整行,或者在v模式下删除整段。

也可以输入一个数字,然后按下dd删除多行,比如3,然后dd,删除本行在内的以下三行。

 

删除一列或多列:

其实还是多选的问题,还是要用到v这个命令,不过应该是Ctrl + v,

Ctrl  v之后移动光标,选中要删除的几行几列,按x或者d都可以删除掉。

 

格式化代码:

我一般就是v,选中几行,然后按等号键=,当然,这是格式化某一段。

那格式化整篇代码怎么办呢,其实还是差不多啊。

按g回到页首,v进入visual模式,G(其实就是shift + g)到页尾,然后等号=搞定,

但是有个前提是你把vim的配置文件设置好缩进,后面会说这个设置文件。

 

代码比对:

vimdiff

命令模式下: vert  diffsplit [filepath]

 

vim查看二进制文件:

vim -b ${filename} 打开文件,-b表示打开binary文件

:%!xxd                   xxd是binary转16位,%和!表示什么不是太清楚,%好像是表示当前路径,待考证。

 

vim显示行号:

:set number

或 set nu

取消显示行号:

:set nonumber

或 set nonu

其实set这个命令有很多功能呢,目前用到最多就是个显示行号,哈哈。

 

下面重头戏来了,vim的配置文件。

我在ls的时候总是习惯性的ls -a显示隐藏文件,哈哈哈,吐个槽。

言归正传:

cd /etc/vim/  然后

vim vimrc   打开配置文件vimrc,这时候会显示一个有很多注释的配置文件

我们这时只需在文件下面加几行:

set tabstop=4                       设置制表符宽度,tab、4个空格

-----------------------------

set expandtab                       设置4空格替换tab

set noexpandtab                  设置tab替换空格    这地方是个坑,不写这一句,tab键下去还是8个空格?我也不太确定

-----------------------------
set softtabstop=4                 设置制表符宽度
set shiftwidth=4                    设置缩进宽度,4个空格
set smartindent                    设置智能缩进
set cindent                            设置c/c++方式缩进
set nu                                    设置显示行号
set hlsearch                          设置显示高亮

 

嗯,这么些差不多够用了,今后有什么再加吧。
 

2017,9,14补充:

vimdiff经常会将相同的部分折叠起来,

打开指定折叠: zo

收回已打开的折叠:zc

打开所有折叠:zr

 

 

 

 

 

 

vi/vim虐我千百遍,我待vi/vim如初恋 大家都知道从20分提高到80分很容易,但是从80分提升到98分可以说很难了。那么手速呢?如何把提升刚才的速度?在其他地方你可能体会不到,在我这篇文章里,会给你神一般的操作。(几十个gif图陪伴你) 阅读详情

相关推荐

基于555定时器的D类功放设计:从PWM原理到无反馈电路实践

D类功放(数字功放)是一种高效率的音频放大技术,其核心原理是脉冲宽度调制(PWM)。它将输入的模拟音频信号转换为一系列高速开关的脉冲,通过控制功率开关管(如MOSFET)的通断,再经低通滤波器还原放大后的音频。相比传统AB类功放,其转换效率通常超过90%,显著降低了热能损耗。这项技术在追求高能效和小型化的现代音频设备中价值凸显,广泛应用于有源音箱、汽车音响和便携式设备。本文聚焦于一种独特的实现方案:以经典的555定时器芯片为核心,构建一个无整体负反馈的D类功放。通过剖析其PWM调制器、FET电压-电流转换级

weixin_30162121的博客 221

vi&vim编辑器

vi&vim简介:                     1.vi是linux下标配的一个纯字符界面的文本编辑器,由于不是图形界面,相关操作都要通过         键盘输入命令来完成,需要记住一些常用的操作命令       2.vim是vi的升级版本,完全兼容vi,vim也可以完全当成vi使用,vim是在vi的基础上增加         一些功能,比如语法着色等启动vi:vi file...

XMublog的博客 273

2 利用ITK实现多帧Dicom读取,VTK实现数据显示

vtk中也有dicom读写类,但是只能完成单帧DICOM数据读取,这对于实际应用是非常不利的。而ITK可以实现dicom多帧读取,通常情况ITK与VTK也会结合使用(ITK处理,VTK显示),所以就一起学习下吧!

buerbuhuitou的博客 1564

vim 命令&笔记

索引 1. 关于Vim 1.1 Vim的几种模式 2. 启动Vim3. 文档操作4. 光标的移动 4.1 基本移动4.2 翻屏4.3 标记 5. 插入文本 5.1 基本插入5.2 改写插入 6. 剪切复制和寄存器 6.1 剪切和复制、粘贴6.2 文本对象6.3 寄存器 7. 查找与替换 7.1 查找7.2 替换7.3 正则表达式 8. 排版 8.

wjkdtl的专栏 9083

中介效应、调节效应与交互效应:从概念辨析到统计建模全指南

在社会科学与数据分析研究中,理解变量之间的因果关系与条件性影响是核心任务之一。回归分析作为最基础的统计工具,常被用于探索自变量对因变量的作用机制,而中介效应与调节效应则分别回答了“如何影响”与“何时影响不同”的深层问题。中介效应通过路径分析拆解因果链条,揭示内部的传导机制;调节效应则借助交互项识别影响的边界条件。Bootstrap法已成为检验间接效应的主流手段,而简单斜率分析则让调节作用的模式更加直观。无论是用户研究、医学统计还是产品数据分析,掌握这些模型都能帮助研究者构建更具解释力的实证框架。本文基于大量

weixin_29051149的博客 330

碳纳米管NRAM:突破5纳米制程的下一代存储技术

在半导体存储领域,非易失性存储器和随机存取存储器是两大基础技术方向。传统DRAM速度快但断电易失,NAND Flash非易失但写入慢、寿命有限,两者在先进制程下都面临物理极限挑战。碳纳米管作为一种新型纳米材料,凭借其优异的导电性、机械强度和尺寸微缩潜力,为存储技术革新提供了物理基础。基于碳纳米管的NRAM技术,通过控制纳米管间的可逆接触实现电阻状态切换,兼具DRAM级速度和Flash的非易失性,同时具备近乎无限的擦写寿命和出色的CMOS工艺兼容性。这项技术不仅能满足5纳米以下制程的存储需求,在数据中心缓存、

weixin_42576804的博客 427

vi&vim操作高级篇

单行复制粘贴删除 在当前目录下创建一个a文件,使用vim a打开并编辑,随便输入一下内容。输入完成后,点击Esc,返回一般模式,将光标上下移动到任意行,双击y,再点击p,即可完成单行的复制粘贴。 将光标移动到任意行,双击d,即可完成单行删除。 在一般模式下按u键可撤销最近一次操作。 全文查找 在一般模式下,输入/以及要查找的内容,回车,即可显示匹配的内容。点击n可继续往下文查找,点击N可往上文查找。 查找并替换 :1,$s/word1/word2/g 将第一行至最后一行的所有world1替换..

Rosen's 631

SigFit实战:从FEA到光学仿真的热力耦合分析全流程解析

在光机系统与芯片封装等精密工程领域,热与力的耦合效应是影响产品性能与可靠性的核心物理问题。有限元分析(FEA)是预测结构在热、力载荷下变形与应力的基础工具,但其结果通常无法直接用于评估光学性能。这需要一座桥梁,将物理场数据转化为光学设计语言。其核心原理在于数据映射与面形表征技术,例如通过泽尼克多项式拟合,将离散的节点位移分解为离焦、像散等标准光学像差。这项技术的工程价值在于,它实现了多物理场仿真的闭环,使工程师能在设计阶段精准预测热变形或应力对波前误差、调制传递函数等关键光学指标的影响。其典型应用场景包括高

weixin_28630185的博客 337

Vi & Vim

介绍了Linux中非常好用的编辑器Vi/Vim的使用

Jingmin Wei's Blog 351

PythonWeb开发框架—Django之工程创建和models的定义和增删改查

文章介绍了Django工程的创建、models的定义和增删改查

weixin_42476668的博客 990

HDR 成像技术学习(三)—— LOFIC

LOFIC(Lateral Overflow Integration Capacitor,横向溢出集合电容)介绍,从像素结构到工作时序。

沧海一升的博客 9729

Linux——vi/vim编辑器快捷键

所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在。 但是目前我们使用比较多的是 vim 编辑器。 vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计。什么是 vim?Vim是从 vi 发展出来的一个文本编辑器。代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。 简单的来说, vi 是老式的字处理器,不过

Learn From The Masters 3573

Simulink仿真模块 - Signal Conversion

目录 说明 实例 创建总线信号的连续副本 ​将虚拟总线转换为非虚拟总线​ 将非虚拟总线转换为虚拟总线 将Muxed信号转换为矢量 模块特性 Signal Conversion:将信号转换为新类型,而不改变信号值 在仿真库中的位置为: Simulink / Signal Attributes HDL Coder / Signal Attributes 模型为: 说明 Signal Conversion模块可将信号从一种类型转换为另一种类型。要选择要...

jk_101的博客 3419

7.Redhat && CentOS中vim(vi)文本编辑器的常见用法

Vim是一款当前Linux系统中默认安装的文本编辑器,它功能强大,熟练地掌握其基本的用法,会对Linux学习更加得心应手。 1.Vim的工作模式 vim共有三种模式: 1)命令模式:控制光标移动,可对文本进行复制、粘贴、删除和查找等工作; 2)插入模式:可以正常编辑文本内容; 3)退出模式:保存或退出文档。 2.命令模式下Vim的用法信息 1)vim工作模式配置 在vim命令模式下...

愿你走出半生,归来仍是少年! 952

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

vi 和vim 的区别

它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面。 vim的这些优势主要体现在以下几个方面: 1、多级撤消 我们知道在vi里,按 u只能撤消上次命令,而在vim里可以无限制的撤消。 2、易用性 vi只能运行于unix中,而vim不仅可以运行于unix,windows ,mac等多操作平台。 3、语法加亮

差不多先生 2万+

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

vi 和 VIM 的区别

vi/vim 是 Linux 系统内置的不可或缺的文本编辑命令,VIM 是 vi 的加强版本,兼容 vi 的所有指令,不仅能编辑文本,而且还具有 shell 程序编辑的功能,可以不同颜色的字体来辨别语法的正确性,极大方便了程序的设计和编辑性。 vi/vim 的介绍 vi/vim 三种模式:命令模式/一般模式(command mode)、插入模式(input mode)、末行模式/指令命令模式(last line mode)。 命令模式/一般模式: 刚刚启动 vi/vim,则进入一般模式,可以移动光标、复制粘

一个有趣灵魂的测试员,指点江山,挥斥方遒 1万+

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Linux vi/vim编辑器

Linux vi/vim编辑器

qwertf123的博客 3228

linux(ubuntu)中vim/vi的常见用法

vi/vim常用命令   vim其实就是vi的升级版,vi里的所有命令vim里都可以用,一般使用来说几乎没什么差别。   注:本篇文章区分大小写!      vi / vim三级模式的关系:    命令行模式   任何时候,不管用户处于何种模式,只要按一下ESC键,即可使Vi进入命令模式;我们在shell环境(提示符为$)下输入启动Vi命令,进入编辑器时,也是处于该模式下。在该模式下...

ai_yue的博客 1万+

vi 和 vim 的区别?

作为软件测试工程师,不可避免需要操作到 Linux 系统,vi/vim 是 Linux 系统内置的不可或缺的文本编辑命令,VIM 是 vi 的加强版本,兼容 vi 的所有指令,不仅能编辑文本,而且还具有 shell 程序编辑的功能,可以不同颜色的字体来辨别语法的正确性,极大方便了程序的设计和编辑性。 vi/vim 的介绍 vi/vim 三种模式:命令模式/一般模式(command mode)、插入模式(input mode)、末行模式/指令命令模式(last line mode)。 命令模式/一般模式

软件测试前沿技术分享 4800

vi/vim 的用法与区别

vi/vim 三种模式:命令模式/一般模式(command mode)、插入模式(input mode)、末行模式/指令命令模式(last line mode)。

zxj519911的博客 1078

Linux之vi、vim、sed用法

1.Linux下创建文本文件(vi/vim命令使用详解)vi test.txt/vi filename或者vim test.txt/vim filename再或者touch test.txt/filenamevim是vi的升级版,指令更多,功能更强。下面是收集的vim用法,当在vim里面要实现退出,首先要做的是按【Esc】,然后再输入【:wq】一、一般模式:删除、复制与粘贴类命令x,X      ...

Jane_Jasmine的博客 2562

vi 和 vim 的基本用法

vi 和 vim 的基本用法vi 和 vim 是 liunx 内置的编辑器。vi编辑速度是最快的;vim编辑器可以看作vi的高级版本,它实现了用颜色来进行特殊信息的显示。vim 和 vi 编辑器的三种模式 一般模式: vim 文件名 (直接进入一般模式):在一般模式下,可以进行上下左右的光标移动、删除字符、行,还可以进行复制和粘贴操作 编辑模式,在一般模式中按 i,l,o,O,a,A,r,R 等

perfectzq的博客 833

VI和VIM的用法

一、VI和VIM的关系 VIM是VI的增强版,VIM与VI编辑器完全兼容。 Vi和Vim的区别为:搜索不同、脚本语言不同、共享不同。VIM是从vi发展出来的一个文本编辑器。代码补全、编译及错误跳转等方便编程的功能丰富,在程序员中被广泛使用,和Emacs并列成为类Unix系统用户最喜欢的文本编辑器。 搜索不同:Vi不支持正则表达式的搜索;Vim支持正则表达式的搜索。 脚本语言不同:Vi没有自己...

致虚极,守静笃,万物并作,吾以观其复 555

vi和vim的区别

写这篇文章的目的,是为了告诉大家尽量使用vim指令对文本进行编辑。初学Linux系统时,我尝试使用vi指令对文本进行编辑,但是无论我怎么努力,都无法成功写入内容。经过一段时间的尝试和摸索,我才发现原来我应该使用vim指令来编辑文本。使用vim指令后,我终于能够顺利地编辑并保存文本了。本篇博客借鉴vi和vim的区别vi/vim 三种模式:命令模式/一般模式(command mode)、插入模式(input mode)、末行模式/指令命令模式(last line mode)。1、命令模式/一般模式。

qq_35654286的博客 1512

Linux vi、vim

今天的主要内容是文件管理基础命令供大家参考,更多内容将会为大家持续加载!!!

2301_76768069的博客 1142
上一篇: Linux下SSH的安装和使用
下一篇: 关于git的一些用法
Benjamin_Xu
博客等级 码龄14年 46粉丝 54原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值