文章目录

  • vi和vim
  • 模式
    • 一般模式
    • 编辑模式
    • 命令模式
  • 快捷键

vi和vim


Vi是unix/linux操作系统中最经典的文本编辑器,只能是编辑字符,不能对字体、段落进行排版;它既可以新建文件,也可以编辑文件;它没有菜单,只有命令,且命令繁多,vi适用于文本编辑。
Vim是从 Vi 发展出来的一个文本编辑器,可以看做是 Vi 的增强版本,可以主动的以字体颜色辨别语法的正确性,方便程序设计代码补全、编译及错误跳转等方便编程的功能特别丰富,vim适用于coding。

模式


vi/vim共分为三种模式,分别是一般模式、编辑模式、命令模式,转换关系如下:

一般模式

在一般模式下,可以使用快捷键(列在文章末尾):
就不一一演示了

输入指令vim filename就能进入一般模式了:

编辑模式

在一般模式下输入以下快捷键就能进入到编辑模式,进行文本编辑:

快捷键 作用
i 从目前光标所在处输入(常用)
I 在目前所在行的第一个非空格符处开始输入
a 从目前光标所在的下一个字符处开始输入
A 从光标所在行的最后一个字符处开始输入
o 在目前光标所在的下一行处输入新的一行
O 在目前光标所在处的上一行输入新的一行
r 只会取代光标所在的那一个字符一次
R 会一直取代光标所在的文字,直到按下 ESC 为止


(插播反爬信息 )博主CSDN地址:https://wzlodq.blog.csdn.net/

命令模式

常用命令 作用
:w 将编辑的数据写入硬盘档案中
:w! 若文件属性为『只读』时,强制写入该档案
:q 退出 vi
:q! 若曾修改过档案,又不想储存,使用 ! 为强制离开不储存档案。
:wq 保存并退出,若为 :wq! 则为强制保存并退出(常用)
:w [filename] 将编辑的数据储存成另一个档案(类似另存新档)
:r [filename] 在编辑的数据中,读入另一个档案的数据并加到游标所在行后面
:! command 暂时离开 vi 到指令行模式下执行 command 的显示结果
:! ls /home 即可在 vi 当中察看 /home 底下以 ls 输出的档案信息



快捷键


快捷键 作用
h 或 ← 光标向『左』移动一个字符
j 或 ↓ 光标向『下』移动一个字符
k 或 ↑ 光标向『上』移动一个字符
l 或 → 光标向『右』移动一个字符
Ctrl + f 屏幕向『下』移动一页
Ctrl + b 屏幕向『上』移动一页
Ctrl + d 屏幕向『下』移动半页
Ctrl + u 屏幕向『上』移动半页
+ 光标移动到非空格符的下一行
- 光标移动到非空格符的上一行
0 或 [Home] 移动到这一行的最前面字符处
$ 或 [End] 移动到这一行的最后面字符处
H 光标移动到这个屏幕的最上方那一行的第一个字符
M 光标移动到这个屏幕的中央那一行的第一个字符
L 光标移动到这个屏幕的最下方那一行的第一个字符
G 移动到这个档案的最后一行
gg 移动到这个档案的第一行
n <space> 光标向后面移动 n 个字符距离
n <Enter> 光标向下移动 n 行
/word 向光标之下寻找一个名称为 word 的字符串。
?word 向光标之上寻找一个字符串名称为 word 的字符串
n 代表重复前一个搜寻的动作
N 与 n 刚好相反,为『反向』进行前一个搜寻动作
x 为向后删除一个字符 (相当于 [del] )
X 为向前删除一个字符(相当于 [backspace] )
nx 连续向后删除 n 个字符
dd 删除游标所在的那一整行(常用)
ndd 删除光标所在的向下 n 行
d1G 删除光标所在到第一行的所有数据
dG 删除光标所在到最后一行的所有数据
d$ 删除游标所在处,到该行的最后一个字符
d0 删除游标所在处,到该行的最前面一个字符
yy 复制游标所在的那一行(常用)
nyy 复制光标所在的向下 n 行
y1G 复制游标所在行到第一行的所有数据
yG 复制游标所在行到最后一行的所有数据
y0 复制光标所在的那个字符到该行行首的所有数据
y$ 复制光标所在的那个字符到该行行尾的所有数据
p 将已复制的数据在光标下一行贴上(常用)
P 将已复制的数据在光标下一行贴上
J 将光标所在行与下一行的数据结合成同一行
c 重复删除多个数据
u 复原前一个动作(常用)
[Ctrl]+r 重做上一个动作(常用)
. 重复前一个动作 (常用)

原创不易,请勿转载(本不富裕的访问量雪上加霜 )
博主首页:https://wzlodq.blog.csdn.net/
微信公众号:吾仄lo咚锵
如果文章对你有帮助,记得一键三连❤

Linux-vi和vim相关推荐

  1. 重庆思庄Linux技术分享- linux vi与vim的区别

    VI与VIM区别 它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面. vim的这些优势主要体现在以下几个方面: 1.多级撤消 我们知道在vi ...

  2. Linux vi、vim使用手册

    vi.vim使用手册 目标 01. `vi` 简介 1.1 学习 `vi` 的目的 1.2 vi 和 vim vi `vim` 查询软连接命令(知道) 02. 打开和新建文件 2.1 打开文件并且定位 ...

  3. Linux vi与vim使用

    vi与vim vi编辑器是所有Unix及Linux系统下标准的编辑器,他就相当于windows系统中的记事本一样,它的强大不逊色于任何最新的文本编辑器.他是我们使用Linux系统不能缺少的工具.由于对 ...

  4. Linux vi和vim

    vi和vim 一.vi和vim的基本介绍 二.vi和vim的三种常见模式 1.正常模式 2.插入模式/编辑模式 3.命令行模式 4.三种模式的切换 三.vi和vim的快捷键 1.常见的快捷键 2.其他 ...

  5. Linux -- vi和vim编辑器(编写Hello.java程序,三种模式的转换,常用快捷键练习)

    文章目录 1. vi和vim编辑器 1.1 vi和vim编辑器介绍 1.2 vi和vim的三种常见模式 1.3 快速入门案例:使用`vim`开发一个`Hello.java`程序 1.3.1 建立 `H ...

  6. linux vi或者vim编辑器中如何显示行号

    设置行号很简单 我们要到vi或者vim编辑器的末行模式下,输入set number :set number 按下回车就显示行号了 那么怎么关闭行号呢? 只要再到vi或者vim编辑器的末行模式下输入se ...

  7. vi和view的区别 linux,vi与vim的区别

    Vim是从 vi 发展出来的一个文本编辑器 .代码补完.编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用.和Emacs 并列成为类Unix系统 用户最喜欢的编辑器. Vim的第一个版本由B ...

  8. linux的命令vim,Linux命令:vi | vim命令

    vim - vi 增强版.文本编辑器 格式:vim [options] [file ..] 说明:如果file存在,文件被打开并显示内容,如果文件不存在,当编辑后第一次存盘时创建它 [options] ...

  9. linux系统vi替换命令,linux:vi 替换命令

    转自:http://www.cnblogs.com/afant/archive/2009/03/11/1408745.html :s/^.*$/\L&/100 ##将100行内的小写转换成大写 ...

  10. Linux系统配置VI或VIM的技巧

    Linux系统配置VI或VIM的技巧 作者:IT专家网论坛出处:IT专家网论坛2008-10-28 11:08 配置VI和VIM的颜色显示,使它能够高亮度显示一些特别的单词,这对编写程序很有用⋯⋯ 1 ...

最新文章

  1. 临床基因组学数据分析实战助力解析Case,快速发表文章
  2. 《Web 标准实战》——Web开发人员必读的一本书
  3. 【Boost】boost库asio详解4——deadline_timer使用说明
  4. html css纵向滑动列表,JS实现的简洁纵向滑动菜单(滑动门)效果
  5. 7-7 六度空间 (30 分)(BFS遍历详解)(DFS最后一个点过不去)
  6. 洛谷P5661 公交换乘(CSP-J 2019 T2)
  7. java 定时执行任务
  8. docker 容器 exited_docker常用命令整理
  9. java分部积分任务代码实现_数值积分 Java 实现
  10. Mongoose学习参考文档
  11. 浙江理工考研c语言程序设计,浙江理工大学C程序设计期末试卷A卷
  12. 为Python IDLE 添加清屏(Ctrl + L )快捷工具(附带解决错误的方法)
  13. 在MAC终端下打开Finder
  14. ubuntu设置桌面和锁屏背景
  15. Linux目录及常用命令英文全称与中文解释(实用干货)
  16. 如何获取未安装apk应用的包名、应用名以及版本信息等
  17. QQ群共享总是下载失败怎么解决?
  18. 易点易动助力企业固定资产信息化管理
  19. 用python写出各种三角形
  20. rowid与rownum的含义是什么?

热门文章

  1. 手机拍摄界面的各种符合如何使用-以小米10为例
  2. Centos6.8基本指令
  3. SAP中关于发票日期和凭证日期的异同原因分析
  4. 大厂程序员接私活被坑, 还被放鸽子,那源码就开源-基于SSM仿知乎小程序
  5. 技术汇-读《Microservices》有感
  6. 新版的QQ找不到邮箱入口
  7. 城际快车 /城际拼车 /定制客运 /城际包车 运营系统源码平台
  8. phpstudy后门(转自feng)
  9. C++仿照string类,写一个my_string类并实现相关功能
  10. 大学一年级计算机组成语结构试题,一年级语文期终试卷