码迷,mamicode.com
首页 > 系统相关 > 详细

VIM编辑器

时间:2015-09-02 19:14:46      阅读:306      评论:0      收藏:0      [点我收藏+]

标签:服务器   可扩展性   配置文件   编辑器   

        vim是vi的增强版,它比vi更强大,vi号称神一样的编辑器,它是一款跨平台的软件,也就是说,不论你是在windows/linux/mac os下都能使用它,它是一款纯命令行界面的编辑工具,非常适合在无图形化界面的linux服务器上编辑一些配置文件等。可扩展性非常强,当然也有图像化界面的如GVIM,一般传说中开发界的武林高手通过定制,可以将它打造成最强的开发神器,例如加上代码高亮、自动缩进、代码自动补全等等等等,如图所示:

技术分享


在所有linux或者类unix操作系统上,都内置了vi编辑器,但可能没有内置vim:如有你需要安装的话可以使用如下命令去安装:

Debian/Ubuntu

sudo apt-get install vim

Redhat/Centos

yum -y install vim

一、如何使用vim编辑文件

我们打开终端,输入vim就启动了vim程序了,或者你输入vim 后面跟上某个文件的文件名同样也可以打开vim

技术分享

二、如何编辑文件

在了解编辑文件之前,我们必须知道vim的工作模式,他有三种工作模式,分别为:

  • 普通模式

  • 插入模式

  • 命令模式


    技术分享

首先,我们来看下普通模式,它可以实现最基本的光标移动与大量的快捷操作,插入模式可以实现文件的基本编辑操作,命令模式可以实现特定的功能,如查找,保存退出等。


普通模式的一些说明:

按键说明
a进入插入模式后,后续输入的内容将插入到当前光标后面
A进入插入模式后,后续输入的内容将插入当前段落的段尾
i进入插入模式后,后续输入的内容将插入到当前光标的前面
I进入插入模式后,后续输入的内容将插入到当前段落的段首
o进入插入模式后并在当前行的后面创建一个新的空白行
O进入插入模式后并在当前行的前面插入一个新的空白行


光标操作,在vim中,上下左右移动,跳到行首行尾段首段尾文首文尾等操作都是在普通模式下操作的

快捷键
说明
h光标向左移动一位
j光标向下移动一位
k光标向上移动一位
l光标向右移动一位
gg移动光标至文件首行
G移动光标至文件末行
nGn为数字,例如移动到第10行,则是10G
^光标移动当前行的首字符
$光标移动到当前行的尾字符
fx光标移动至当前行的下一个x字符处
Fx光标移动至当前行的上一个x字符处
w光标向右移动一个单词
nw光标向右移动n个单词
b光标向左移动一个单词
nb光标向左移动n个单词
:line number跳转到指定行

编辑文档可以配合普通模式的光标操作跳转到某一行或者某一个单词后进行相应的操作

按键说明
x删除当前光标所在位置的字符
dd删除当前光标所在行
ndd删除当前光标所在行后的n行,n为数字
d$删除当前光标所在位置至行尾的内容
J删除换行符,可以将两行合并为一行
u撤销
rx将当前光标字符替换为x
yy复制当前行
nyy
才复制当前行开始的n行
P粘贴至当前行之前
p粘贴至当前行之后


VIM的查找和替换



指令说明
/char查找指定单词的文件或指定行
:s/root/admin/将当前行出现的第一个root替换成admin
:s/root/admin/g将当前行中所有root替换成admin
:3,5s/sbin/bin/g将3,5行直接的sbin替换成bin
:%s/nologin/fault/g将所有的nologin都替换为fault


保存和退出



指令功能
:wq!/:x强制保存:wq保存,如果没有权限操作文件强制保存无效,:wq nginx.conf 保存文件尾nginx.conf
:q!不保存并退出


句间移动和段间移动


移动到上一句空白处
移动到下一句空白处
{移动到上一段空白处
}移动到下一段空白处



一些小技巧

打开文件就自带跳转到某一行

vim +num file ,例如

vim +5 nginx.conf


在vim中使用shell执行命令

:!ls

技术分享


多文件模式


vim FILE1 FILE2 ...

:next跳转到下一个文件
:first跳转到第一个文件
:prev跳转到上一个文件
:last跳转到最后一个文件
:wqall全部保存并退出
:q!all全部退出

多文件分屏操作

vim -o|-O FILE1 FILE2 ...

-o 横向分屏

-O 竖向分屏

在多个窗口直接切换

技术分享


定制vim的某些工作特性:

(1) 行号

显示:set nu

禁用:set nonu

(2) 括号匹配

显示:set sm

禁用:set nosm

(3) 自动缩进:

set ai

set noai

(4) 高亮搜索

set hlsearch

set nohlsearch

(5) 语法着色

syntax on

syntax off

(6) 忽略字符大小写

set ic

set noic

:help 获取帮助

:help SUBJECT


特性设定的永久生效方式:

全局配置文件:/etc/vimrc

用户个人的配置文件:~/.vimrc



本文出自 “方文俊的IT技术博客” 博客,请务必保留此出处http://fangwenjun.blog.51cto.com/7806977/1690751

VIM编辑器

标签:服务器   可扩展性   配置文件   编辑器   

原文地址:http://fangwenjun.blog.51cto.com/7806977/1690751

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!