vim文本编辑器

为什么学vi?
1)所有的Unix Like 系统都会内建 vi 文本编辑器,其他的文本编辑器则不一定会存在;
2)很多个别软件的编辑接口都会主动呼叫 vi (例如未来会谈到的 crontab, visudo等指令);
3)vim 具有程序编辑的功能,可以主动的以字体颜色辨别语法的正确性,方便程序设计,可安装插件;
4)因为程序简单,编辑速度相当快速

1.vim编辑器中设置了三种模式---命令模式、末行模式、和编辑模式

命令模式:控制光标移动,可对文本进行复制、粘贴、删除和查找等工作。

输入模式:正常的文本录入。

末行模式:保存或退出文档,以及设置编辑环境。

命令作用
a当前光标的下一个位置
i当前光标
o当前光标的下一行插入空行
A当前网标所在行行尾
I当前光标所在行行首
O当前光标的下一行

在每次运行Vim编辑器时,默认进入命令模式,此时需要先切换到输入模式后再进行文档编写工作,而 每次在编写完文档后需要先返回命令模式,然后再进入末行模式,执行文档的保存或退出操作。在Vim 中,无法直接从输入模式切换到末行模式。Vim编辑器中内置的命令有成百上千种用法。

2.常用命令

(1)命令模式下的常用命令---光标移动

行首:0:绝对行首 和home键等价   shift+6:相对行首

行尾:end或者$  绝对行尾 

(2)命令模式下的常用命令---复制、粘贴、删除

(3)命令模式下的常用命令---文件内容查找

(3)命令模式中的基本操作---撤销编辑及保存退出

(4)末行模式中的基本操作---保存文件及退出vi编辑器

保存退出:命令模式:zz                     末行模式::wq

(5)末行模式中的基本操作---打开文件或读入其他新文件内容

(读入操作系统的命令:  :r !)

(6)末行模式中的基本操作---文件内容替换

(7)可视化模式的常用命令

<1> v: 按字符选取 该模式下通过光标移动选择文本,选取后按 y 可以把文本提取到缓冲区(即复制),c 可以剪切。之后可以使用p在光标后粘贴,P粘贴在光标前。

<2> V:按矩形选取 V是行选取模式,以行为单位进行选取。

<3> Ctrl+v是块选取模式,可以选取一块矩形区域中的文本。

3.配置文件

vim /etc/vimrc ---对所有用户的配置文件进行编辑

vim ~/.vimrc ---对当前用户的配置文件进行编辑 

set hlsearch "高亮度反白 set backspace=2 "可随时用退格键删除

set autoindent "自动缩排

set tabstop=4 "缩进

set softtabstop=4 softtabstop是“逢4空格进1制表符”,前提是你tabstop=4

set shiftwidth=4 自动缩进空格长度

set mouse=a "使用鼠标

set selection=exclusive

set selectmode=mouse,key

set ruler "可显示最后一行的状态

set showmode "左下角那一行的状态

4.实例分析

(1)例:将passwd文件中的所有/bin/bash替换成/bin/sh

错误写法::% s//bin/bash//bin/sh/g ---报错

正确写法1::% s/\/bin\/bash/\/bin\/sh/g  不推荐

正确写法2::% s#/bin/bash#/bin/sh#g(也可将#换成@,$等)

(2)复制1-12行到行尾::1,12 co $

(3)将1-12行另存到文件test::1,12 w test3.txt

(4)将49行到行尾删除::49,$ d 

GitHub 加速计划 / li / linux-dash
10.39 K
1.2 K
下载
A beautiful web dashboard for Linux
最近提交(Master分支:2 个月前 )
186a802e added ecosystem file for PM2 4 年前
5def40a3 Add host customization support for the NodeJS version 4 年前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐