Linux快速入门(七)效率工具(Vim)
Vim编辑器
所有的Linux系统都会内建一个Vi文本编辑器,而Vim是从Vi发展出来的一个高度可配置的文本编辑器,旨在高效的创建和更改任何类型的文本,它还可以根据文件的扩展名判别编程语言。
使用方式:vim 文件名。
编辑器模式
Vim有三种编辑模式分别是:
(1) 普通命令模式
用户刚启动Vim时,就处于命令模式,在命令模式下,用户的输入会被识别为命令。在这个模式下可以进行文本的复制、粘贴、剪切等操作。在此模式下命令可以进行组合操作。

(2) 编辑模式
在命令模式下按a、i、o中的任意一个按键就可以切换到编辑模式,在编辑模式下按Esc键可以切换到普通命令模式。编辑模式主要是对文件的内容进行编辑。

(3) 底线命令模式
在命令模式下按:就可以切换到底线命令模式,在底线命令模式下按Esc可以切换到普通命令模式。在底线命令模式下,可以对文件内容进行检索、保存、退出等操作。

这三种模式的关系可以表示为(图像来源:菜鸟教程):

Vim命令汇总(图像来源:菜鸟教程):

常用命令
命令模式
通过Vim打开文件之后处于命令模式,在此模式下可以:
光标移动
(1)h和左箭头键表示光标向左移动一个字符,j和下箭头表示光标向下移动一个字符、k和上箭头表示光标向上移动一个字符、l和右箭头表示光标向右移动一个字符
(2)gg:可以将光标移动到文件第一行;G:可以将光标移动到文件的最后一行。如果要移动到指定的某一行可以使用nG,n为一个具体的数字,比如想要移动到第三行可以输入3G,就可以跳转到第三行。
(3)$:将光标移动到当前光标所在行的末尾,n<space>:可以将光标从当前位置向后移动n个位置。文本操作
(1)v:选择模式,在此模式下可以通过上下左右选择需要的文本,然后进行操作。
(2)d:剪切当前选中的文本;dd:剪切当前行;ndd:剪切包括当前行在内的n行;dG:剪切从光标所在行到最后一行的数据,如果想要删除所有数据,可以将gg命令和dG命令组合使用,输入ggdG,光标会先跳转到第一行,然后删除当前行到最后一行的所有数据。可以将这几个命令当删除使用。
(3)y:复制选中的文本;yy:复制当前行;nyy:复制当前行在内的n行
(4)p:在当前光标位置粘贴之前剪切或者复制的内容
(5)u:撤销上一步操作
编辑模式
对文件的内容进行编辑,类似Word操作,在当前模式下可以通过Esc切换到普通命令模式,再通过:、/、?中的任意一个就可以切换到底线命令模式。
底线命令模式
在底线命令模式下Enter键表示输入完成,在此命令模式下可以:
- 格式设置
(1):set nu:显示当前文本的行号;:set nonu:取消行号显示 - 文本检索、替换
(1)/word:从光标当前位置向下查找第一个为word的字符串,使用n可以重复前一个查找操作,这样就可以从光标当前位置一直向下查找带有word的字符串,使用N可以反向重复前一个操作,与n相反,这样就可以从光标当前位置向上查找带有word的字符串;?word从光标当前位置向上查找第一个为word的字符串。
(2):n1,n2s/w1/w2/g:其中n1、n2位数字,g表示全局搜索,该命令表示在第n1行与n2行之间寻找w1这个字符串,并将该字符串替换为w2;:1,$s/w1/w2/g:将第一行到最后一行的w1替换为w2;:1,$s/w1/w2/gc:将第一行到最后一行的w1替换为w2,且在替换前要求用户确认。 - 文件操作
(1):w:保存当前文件
(2):q:退出当前文件(不保存)
(3):q!:强制退出当前文件(不保存)
(4):wq:保存当前文件并退出
(5):wq!:强制保存当前文件并退出,如果是写入之后强制保存需要确保当前文件有写权限
Linux快速入门(七)效率工具(Vim)的更多相关文章
- Linux快速入门打开你的学习之道
Linux快速入门打开你的学习之道 相信看到这篇文章的你一定是想要学习Linux,或者已经在学习Linux的人了,那我们就可以一起探讨一下,学习Linux如何快速入门呢? 首先,希望大家弄清楚自己为什 ...
- Linux快速入门教程-进程管理ipcs命令学习
使用Linux系统必备的技能之一就是Linux进程管理,系统运行的过程正是无数进程在运行的过程.这些进程的运行需要占用系统的内存等资源,做好系统进程的管理,对于我们合理分配.使用系统资源有非常大的意义 ...
- Linux快速入门03-系统管理
这部分将涉及常用的各类linux命令和一些系统高级管理特性,尤其是shell script的创建,这部分在系统自动化运维时会很有作用. Linux系列文章 快速入门系列--Linux--01基础概念 ...
- Linux快速入门02-文件系统管理
继续进入Linux文件系统的学习,加油,早日突破MS压在自己身上的那道束缚. Linux系列文章 快速入门系列--Linux--01基础概念 快速入门系列--Linux--02文件系统管理 快速入门系 ...
- Linux快速入门04-扩展知识
这部分是快速学习的最后一部分知识,其中最重要的内容就是源码的打包和软件的安装的学习,由于个人的Linux学习目的就是自己能在阿里云Ubuntu上搭建一个简单的nodejs发布环境. Linux系列文章 ...
- NOI Linux 快速入门指南
目录 关于安装 NOI Linux 系统配置 网络 输入法 编辑器 1. gedit 打开 配置 外观展示 2. vim 打开 配置 使用 makefile 编译运行 1. 编写 makefile 2 ...
- Linux快速入门01-基础概念
4年多前,刚到上海时报过一个关于Oracle的培训班,在那里接触到了Linux,不过一直都没真正去试着使用它.现在经过慢慢的成长,越来越觉得,Linux是每一个服务端工程师必须掌握的系统,即使是现在最 ...
- linux的基本操作(文本编辑工具vim)
文本编辑工具vim * 命令模式:在一般模式下,输入”:”或者”/”即可进入命令模式.在该模式下,你可以搜索某个字符或者字符串,也可以保存.替换.退出.显示行号等等. 下面笔者教你如何在一个空白文档中 ...
- linux快速入门 1.1命令行操作
http://lovesoo.org/linux-command-line-operation.html 1.1命令行操作 目录: <wp_nokeywordlink>Shell简介 &l ...
- Linux快速入门
一.Linux介绍 1.Linux是基于Unix的开源免费的操作系统 2.Linux的分类: (1)Linux根据市场需求不同,基本分为两个方向: 1)图形化界面版:注重用户体验,类似window操作 ...
随机推荐
- 使用7-zip进行分卷压缩和解分卷压缩(Windows和Linux)
现在一共有10个视频,一共313M,我对该文件夹进行分卷压缩,每个tar包100M,压缩过程如下: Windows环境首先选中所有的压缩包,然后在压缩包上单击鼠标右键,然后选择7-Zip,再选择提取到 ...
- JS leetcode 多数元素 题解分析
壹 ❀ 引 做题做题,再忙每天都要抽空做一道题!今天来做一道有趣的题,题目来自多数元素,题目描述如下: 给定一个大小为 n 的数组,找到其中的多数元素.多数元素是指在数组中出现次数大于 ⌊ n/2 ⌋ ...
- Linux常用的20个命令(上)
无论你是后端程序员还是前端程序员,都避免不了和Linux打交道.Linux的命令有很多,这里仅介绍常用的20个,方便快速查看,也欢迎大家作补充. 1.mkdir 命令 make directories ...
- mdbook安装使用实录
简介 mdbook是一个基于Rust的电子书系统,效果类似于gitbook.本人写图文文章一直都采用的印象笔记,但是写系列教程的情况不方便管理.因此引入mdBook,分享一下基本安装使用过程及遇到的问 ...
- 微信小程序生态13-微信公众号自定义菜单配置
序 微信公众号分为订阅号和服务号两种,虽然二者很大的不同,但是这两种公众号的底部却是差不多的:都有菜单栏,而且这些底部菜单也都是自定义配置的. 如CSDN的官方公众号的底部就有精彩栏目.新程序员.CS ...
- 关于Image的mode属性(多图示例)
一.总览 Image的mode是指图片裁剪.缩放的模式,共有14个合法值,分别是: /** 缩放模式,不保持纵横比缩放图片,使图片的宽高完全拉伸至填满 image 元素 */ scaleToFill ...
- 硬件开发笔记(十二):RK3568底板电路电源模块和RTC模块原理图分析
前言 做硬件做系统做驱动,很难从核心板做起,所以我们先依赖核心板,分析底板周围的电路,然后使用AD绘制原理图和设计PCB,打样我司测试底板,完成硬件测试,再继续系统适配,驱动移植,从而一步一步完善 ...
- django学习第二天---django视图系统,基于类的视图写法,FBV和CBV加装饰器
django视图系统 request对象 常用属性和方法 print(request) #wsgirequest对象 print(request.path) #请求路径 /index/ print(r ...
- 【LeetCode哈希表#1】有效的字母异位词+赎金信(数组)
有效的字母异位词 力扣题目链接(opens new window) 给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词. 示例 1: 输入: s = "anagr ...
- Windows 实例如何开放端口
矩池云 Windows 实例相比于 Linux 实例,除了在租用机器的时候自定义端口外,还需要在 Windows防火墙中添加入口规则.接下来将教大家如何设置 Windows 防火墙,启用端口. 租用成 ...