linux-认识vi vim
vi 编译器
Linux vi 命令非常强大,熟练地使用它可以高效的编辑代码,配置系统文件等
命令:vi [文件]
vim [文件]
vi 分为三种模式:命令模式、文字模式、末尾模式
---------------
命令模式:以vi打开一个文件就直接进入一般指令模式,在这里可以通过上下左右开移动光标,可以文件内容;复制粘贴文件数据

--------------
文字模式:一般在命令模式中只能进行删除、移动、复制粘贴,但是不能进行编辑,所以要在命令模式后输入:i 、I、a、A、O、o 、r、R可以进入文字模式 ,按esc,可以退出文字模式进入命令模式

--------------
末尾模式:当在命令模式时,已经对文件的数据进行更改后,输入: / ?三种符合一种光标回移动道末尾,进行末尾模式,这里可以进行读取、保存、离开等动作

--------------------------------------
具体可以按照步骤走一波~
vim a.txt //创建一个a.txt文件


2.输入"i"进入编辑模式,接下来咱们输入一下歌词


3.输入完后,可以按ESC返回到命令模式,按:进行末尾模式 输入wq (保存退出)

好,接下载咱们一起看一下是否可以正常使用

按键说明:
除了有i,a,r,o,esc,w,q之外,还有其他常用的一些快捷键
移动光标:除了键盘上四个(上下左右)的箭头外,
还可以使用这些
h (向左移动一个字符)
j(向下移动一个字符)
k(向上移动一个字符)
l(向右移动一个字符)
有没有发现在主键区hjkl这四个键位是在一起的哦~~~
H:光标移动到这个屏幕最上方那一列的第一个字符
M:移动到这屏幕中央的那一列的第一个字符
G:移动到这个为念的最后一列
nG :以n位数字,移动道这个文件的第n列。
n<Enter>:n为数字,光标向下移动n列
--------------------------------------------------------
搜索与取代
--------------------------------------------------------
/word: 向光标之下寻找一个名称为word的字符串,例如想要在文件内搜寻etcs这个字符串
就输入/etcs 即可!
?word: 向光标之上寻找一个字符串名为word的字符串
n:代表重复前一个搜寻动作
N:大写的N与n刚好相反,为反向前一个搜寻的动作 例如:/vbird 按下N则表示向上搜寻vbird
-----------------------------------------------------------
**删除与复制粘贴 **
------------------------------------------------------------
x ,X:大小写的x删除,都是向后删除一个字符
nx:n为数字,连续向后删除n个字符,
dd:删除光标所在的一整列
ndd:n为数字,删除光标下第n列,
d1G:删除光标所在到第一列所有数据
dG:删除光标所在到最后一列所有数据
yy:复制光标所在的一列
nyy:n为数字,复制光标所在的向下n列,例如23yy 则是复制23列
y1G:复制光标所在列到第一列的所有数据
yG:复制光标所在列到最后一列的所有数据
y0:复制光标所在的那个字符到该列行首的所有数据
p,P:粘贴,向已复制的数据粘贴在光标上
------------------------------
末尾模式:离开,存储
-------------------------------
w:保存,保存到硬盘
w:强制保存,若文件权限可以保存,可以使用强制保存
q:离开,退出
q!:强制离开,修改过文件后,又不想保存了,可以使用该指令
wq:保存并退出
wq!:强制保存退出
w[fillename]:保存到另一个文件中
r[filename]:在编辑数据中,读入另一个文件filename的数据
n1 n2 w[filename]:将n1 n2的内容保存到filename文件中
set nu:显示行号
set nonu:取消行号
sp:多功能窗口,可以分成两个窗口进行使用
sp [filename]开启新窗口
swp 当某些原因导致vim没有被存储就断线了,这时候所有的信息都会才放到a.conf.swp中,
swp是可以具有恢复功能的,遇到这个情况后需要:


可以按下R,然后在重新进行保存,保存后要记得删除swp文件,不然每次打开都会提示这样的警告

linux-认识vi vim的更多相关文章
- 【转】Linux上vi(vim)编辑器使用教程
Linux上vi(vim)编辑器使用教程 ------------------------------------------------------------ ikong ------------ ...
- Linux系统Vi/Vim编辑器的简单介绍、安装/卸载、常用命令
Linux系统Vi/Vim编辑器的简单介绍.安装/卸载.常用命令 1.介绍 vi(Visual Interface)编辑器是Linux和Unix上最基本的文本编辑器,工作在字符模式下.由于不需要图形界 ...
- Linux系统 vi/vim文本编辑器
Linux系统 vi/vim文本编辑器 (一)Vim/Vi简介 (二)Vim/Vi工作模式 (三)Vim/Vi基本使用 (四)Vim/Vi应用技巧 (一)Vim/Vi简介 Vim/Vi是一个功能强大的 ...
- Linux上vi(vim)编辑器使用教程
vi(vim)是上Linux非常常用的编辑器,很多Linux发行版都默认安装了vi(vim).vi(vim)命令繁多但是如果使用灵活之后将会大大提高效率.vi是“visual interface”的缩 ...
- [Linux/Ubuntu] vi/vim 使用方法讲解(转载)
转自:http://www.cnblogs.com/emanlee/archive/2011/11/10/2243930.html vi/vim 基本使用方法 vi编辑器是所有Unix及Linux系统 ...
- Linux命令vi/vim 使用方法讲解
vi/vim 基本使用方法 vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单地介绍一下它的用法和一小部分指令.由于对Unix及Linux系统的 ...
- [Linux/Ubuntu] vi/vim 使用方法讲解
vi/vim 基本使用方法 vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单地介绍一下它的用法和一小部分指令.由于对Unix及Linux系统的 ...
- Linux command ------ vi / vim
EDIT mode to GENERAL mode: press ESC General mode: operate file :q! :force to close the file but ...
- 新手指南:Linux上vi(vim)编辑器使用教程
vi(vim)是上Linux非常常用的编辑器,很多Linux发行版都默认安装了vi(vim).vi(vim)命令繁多但是如果使用灵活之后将会大大提高效率.vi是“visual interface”的缩 ...
- Linux下Vi/Vim的使用方法
本文介绍了vi (vim)的基本使用方法,但对于普通用户来说基本上够了!i/vim的区别简单点来说,它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特 ...
随机推荐
- HihoCoder1466-后缀自动机六·重复旋律9
小Hi平时的一大兴趣爱好就是演奏钢琴.我们知道一段音乐旋律可以被表示为一段字符构成的字符串. 现在小Hi已经不满足于单单演奏了!他通过向一位造诣很高的前辈请教,通过几周时间学习了创作钢琴曲的基本理论, ...
- HDU1529-Casher Emploryment(最最...最经典的差分约束 差分约束-最长路+将环变线)
A supermarket in Tehran is open 24 hours a day every day and needs a number of cashiers to fit its n ...
- latex常用技巧
画表格 \usepackage{multirow} \begin{tabular}{cccc} \hline \multicolumn{4}{c}{学生信息}\\ \hline 班级& 姓名& ...
- 基于iSensor的MT9M001C12STM传感器调试总结
iSensor APP 之 摄像头调试 MT9M001C12STM iSensor app 非常适合调试各种摄像头,已测试通过的sensor有: l OV7670.OV7725.OV9650.OV ...
- redis(7)--redis应用实战
问题1:哨兵模式下客户端应该连接哪个redis-server? 问题2:集群模式下为什么会有MOVED error Redis Java客户端介绍 已有的客户端支持 Redis Java客户端有很多的 ...
- python学习-for
# 对字典的遍历. key-value# dict_my = {"class":"python17","goal":"翻倍&quo ...
- jq触发oninput事件
之前一直在用jq的change()方法来处理输入框的值变化事件,以及触发输入框的变化事件. 后来发现change()方法有个弊端,change事件的发生条件是:输入框的值value发生变化,并且输入框 ...
- So Easy - 在Linux服务器上部署 .NET Core App
.NET Core 是微软提供的免费.跨平台和开源的开发框架,可以构建桌面应用程序.移动端应用程序.网络应用程序.物联网应用程序和游戏应用程序等.如果你是 Windows 平台下的 dotnet 开发 ...
- 聊一聊 Vue 中 watch 对象中的回调函数为什么不能是箭头函数?
聊一聊 Vue 中 watch 对象中的回调函数为什么不能是箭头函数 本文重点知识点速览: Vue 中的 watch 对象中的回调函数不能是箭头函数. 箭头函数中的 this 指向的是函数定义时所在的 ...
- 第三次作业-Python网络爬虫与信息提取
1.注册中国大学MOOC 2.选择北京理工大学嵩天老师的<Python网络爬虫与信息提取>MOOC课程 3.学习完成第0周至第4周的课程内容,并完成各周作业 过程. 5.写一篇不少于100 ...