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的所有指令,而且还有一些新的特 ...
随机推荐
- 2017 CCPC秦皇岛 A题 A Ballon Robot
The 2017 China Collegiate Programming Contest Qinhuangdao Site is coming! There will be teams parti ...
- 【Babel】293- 初学 Babel 工作原理
戳蓝字「前端技术优选」关注我们哦! 前言 babel Babel 对于前端开发者来说应该是很熟悉了,日常开发中基本上是离不开它的. 已经9102了,我们已经能够熟练地使用 es2015+ 的语法.但是 ...
- Python流程控制之循环结构
目录 while循环 for循环 嵌套循环 break.continue.pass 练习 当出现有规律或者是重复的事情就可以使用循环. 1.循环变量初始化 2.循环条件 3.循环体 4.改变循环变量 ...
- VS Code 成主宰、Vue 备受热捧!2019 前端开发趋势必读
前端在生产和开发中占据着越来越重要的地位,PC 端.手机端.桌面端.智能手表端等等设备都离不开前端的身影.本文将围绕框架.编程语言.工具.React.Vue 等方面,全面回顾 2019 年前端与 We ...
- final关键字、finally代码块和finalize()方法有什么区别?
1. final是关键字,final可以修饰类.方法.属性. 如果一个类被final修饰,那么这个类就是最终类,不能派生出新的子类,不能作为父类被继承,该类中的所有方法都不能被重写,但是final类中 ...
- .get的取值特点:.get只起到取值的作用 不能对原值修改
#银行支付接口 def pay_interface(username,cost): user_dic=db_handler.select(username) if user_dic.get('bala ...
- 《MySQL数据库》常用语法(一)
MySQL从创建数据库到对表的增删改操作汇总. 1. 数据库操作: -- 查看所有的数据库 SHOW DATABASES ; -- 创建一个数据库,XXX表示数据库名称 CREATE DATABASE ...
- 《Java基础知识》Java类的定义及其实例化
类必须先定义才能使用.类是创建对象的模板,创建对象也叫类的实例化. 下面通过一个简单的例子来理解Java中类的定义: public class Dog { String name; int age; ...
- sql语句字符串包含
select instr('1222','122') from dual//前者包含后者>0 oracle mysql 数据库可中 select charindex('1','12') from ...
- CentOS7 安装 Redis 并设置开机启动
1.下载 https://redis.io/download cd /usr/local/src wget -c http://download.redis.io/releases/redis-3.2 ...