Linux之vim编辑器

Vim是从 vi 发展出来的一个文本编辑器。 vi 是老式的字处理器,不过功能已经很齐全了,但是还是有可以进步的地方。 vim 则可以说是程序开发者的一项很好用的工具代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。

基本上vim共分为三种模式,分别是一般模式、编辑模式、指令列命令模式(也称末行模式)。 这三种模式的作用分别是:

一般模式:

以 vi 打开一个档案就直接进入一般模式了(也是默认的模式)。在这个模式中, 你可以使用(上下左右)按键来移动光标,你可以使用(删除字符)或(删除整行)来处理档案内容, 也可以使用(复制、贴上)来处理你的文件数据。

编辑模式:

在一般模式中可以进行删除、复制、贴上等等的动作,但是却无法编辑文件内容的! 要等到你按下(i, I, o, O, a, A, r, R)等任何一个字母之后才会进入编辑模式。注意:通常在Linux 中,按下这些按键时,在画面的左下方会出现INSERT 或 REPLACE 的字样,此时才可以进行编辑。而如果要回到一般模式时, 则必须要按下Esc这个按键即可退出编辑模式。

指令列命令模式(或末行模式):

在一般模式当中,输入( : / ? )三个中的任何一个按钮,就可以将光标移动到最底下那一行。在这个模式当中,可以提供你搜寻资料的动作,而读取、存盘、大量取代字符、开vi、显示行号等等的动作。

用下图简要体现一下上面的描述:

常用操作指引:

移动光标移动

h 或 向左箭头键(←):光标向左移动一个字符

j 或 向下箭头键(↓):光标向下移动一个字符

k 或 向上箭头键(↑):光标向上移动一个字符

l 或 向右箭头键(→):光标向右移动一个字符

[Ctrl] + [f]:屏幕向下移动一页,相当于 [Page Down]按键 (常用)

[Ctrl] + [b]:屏幕向上移动一页,相当于 [Page Up] 按键 (常用)

[Ctrl] + [d]:屏幕向下移动半页

[Ctrl] + [u]:屏幕『向上』移动半页

+:光标移动到非空格符的下一列

-:光标移动到非空格符的上一列

H:光标移动这个屏幕的最上方那一行的第一个字符

M:光标移动到这个屏幕的中央那一行的第一个字符

L:光标移动到这个屏幕的最下方那一行的第一个字符

G:移动到这个档案的最后一行

gg:移动到第一行,相当于1G

搜寻与取代

/PATTERN:向下查找字符串。

?PATTERN:向上查找一个字符

:n1,n2s/PATTERN1/PATTERN2/g,n1 与 n2 为数字。在第 n1 与 n2 行之间寻找PATTERN1这个字符串,并将该字符串取代为PATTERN2;

示例:在/tmp/log/a.t文件在1到20行之间搜寻umask并取代为Umask则:

:1,20s/umask/UMASK/g

:1,$s/PATTERN1/PATTERN2/g,从第一行到最后一行寻找 PATTERN1字符串,并将该字符串取代为PATTERN2

:1,$s/PATTERN1/PATTERN2/gc,从第一行到最后一行寻找PATTERN1 字符串,并将该字符串取代为PATTERN2且在取代前显示提示字符给用户确认 (confirm) 是否需要取代

删除、复制与贴上

x, X:x向后删除一个字符,X向前删除一个字符,nx,连续向后删除 n 个字符(n表示数值)

dd:删除所在的行。ndd,向下删除 n 行。

d1G:删除光标所在到第一行的所有数据

dG:删除光标所在到最后一行的所有数据

d$:删除光标所在到该行的最后一个字符

d0:删除光标所在到该行的最前面一个字符

yy:复制光标所在的行,nyy复制光标向下 n 行

y1G:复制光标所在行到第一行的所有数据

yG:复制光标所在行到最后一行的所有数据

y0:复制光标所在的那个字符到该行行首的所有数据

y$:复制光标所在的那个字符到该行行尾的所有数据

p, P:p将已复制的数据在光标下一行贴上,P 则为贴在光标标上一行

u:撤销前一个动作

.:重做上一个动作

行末:$

行首:^

空格:\s

行末空格:\s\+$

行首空格:^\+\s

进入插入或取代的编辑模式

i, I:进入插入模式(Insert mode):i从当前光标位置插入, I 当前前所在行的第一个非空格符处开始插入

a, A:进入插入模式(Insert mode):a 从当前光标位置下一个字符处开始插入; A 在光标所在行的最后一个字符处开始插入

o, O:进入插入模式(Insert mode):o 从当前光标所在的下一行处插入新的一行; O 在当前光标所在处的上一行插入新的一行

r, R:进入取代模式(Replace mode):r 在光标所在的那一个字符替换或取代一次;R会一直取代光标所在的文字,直到按下 ESC 为止

上面这些按键在编辑模式下,左下角处会出现『--INSERT--』或『--REPLACE--』的字样。

[Esc]:退出编辑模式

保存、离开等命令

:w:将编辑的数据保存

:w!:强制保存文档

:q:退出vim

:q!:强制退出vim

:wq:保存并退出。:wq! 保存并强制退出

ZZ:文件没有改动,则不保存退出,若文件已改动过,则保存并退出

:w [filename]:将编辑的文件保存至新的文件

示例:将编辑中/tmp/log/a.t保存至f.t

:r [filename]:在编辑的行中,读入另一个文件的数据

:n1,n2 w [filename]:将 n1 到 n2 的内容保存成 filename 这个文件

:! command:暂时离开 vim到命令模式下执行 command 的显示结果,如:(:! ls /home)即可在 vim中查看 /home目录下文件信息

打开多个文件应用(vim file1 file2)

o:打开文件并横向显示

-O:打开文件并垂直显示

:vs 文件路径/文件名:多窗口打开并垂直分屏

:sv 文件路径/文件名:多窗口打开水平分屏

Ctrl+6:下一个文件(一个窗口,但是打开了多个文件)

:bn:下一个文件(一个窗口,但是打开了多个文件)

:bp:上一个文件(一个窗口,但是打开了多个文件)

Ctrl+w+方向键:切换到前/下/上/后(打开了多个窗口)

Ctrl+ww—:依次向后切换到下一个窗口(打开了多个窗口)

单个文件:q

关闭所有: qa

vim环境的设定

:set nobackup:从不备份

:set autoindent:自动缩进

:set hlsearch:搜索逐字符高亮,nohlsearch搜索逐字符不高亮

:set showmatch:高亮显示匹配的括号;noshowmatch不高亮显示匹配的括号

:set nu:显示行号:nonu:取消行号

:set syntax on :自动语法高亮

:set ignorecase smartcase :搜索时忽略大小写

以上都是临时设定,如需要永久设定生效,需要编辑配置文件:

全局配置文件:/etc/vimrc

示例:设置所有用户下vim编辑文件时,显示行号

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

更多简单了解vim编辑器,可查看vim内建教程输入命令:vimtutor

综合示例:

1、复制/etc/grub2.cfg配置文件至/tmp目录,用查找替换命令删除/tmp/grub2.cfg文件中的行首的空白字符;

注::%s/^\+s\//命令前面指明范围是 "%",所以这会作用于整个文件。"substitute" 命令的匹配模式是"^\+s\"。这表示行首(^)前的一个或者多个(\+)空格(\s)。替换命令的 "to" 部分是空的:"//"。这样就会删除那些匹配的空白字符。

2、复制/etc/rc.d/init.d/functions文件至/tmp目录,用查找替换命令为/tmp/functions的每行开头为空白字符的行的行首加一个#; 原有空白字符保留;

3、替换/tmp/functions文件中的/etc/sysconfig/init为/var/log;

4、删除/tmp/functions文件中所有以#开头,且#后面至少跟了一个空白字符的行的行首#;

时间: 2024-10-12 22:17:05

Linux之vim编辑器的相关文章

linux中vim编辑器各种常用命令及用法

linux中vim编辑器的常用命令以及用法(注意严格区分大小写以及中英文): vim编辑器有三种模式,分别是:编辑模式,输入模式以及末行模式. 模式转换: 编辑模式>>>输入模式: i:在光标所在字符前面,转为输入模式(即转完后在光标所在字符前输入):                      I:在光标所在行的行首,转为输入模式(即转完后在行首输入,不包括行首空                         白) a:在光标所在字符后,转为输入模式(即转完后在光标所在字符后面输入):

linux之vim编辑器详解

字处理器:像word,wps,除了本文本身以外,还有修饰方面的设置. 文本编辑器:编辑纯ASCII文档. nano,sed  入门简单,功能简陋. 强大的vi编辑器 (Visual Interface) 现在是Vim :VI  inproved 它是全屏编辑器,模式化编辑器. vim模式: 编辑模式(命令模式) 输入模式 末行模式 默认处于编辑模式. 模式转化: 编辑模式--->输入模式: i :在当前光标所在字符的前面,转为输入模式. a:在当前光标所在字符的后面,转为输入模式. o:在当前光

Linux中vim编辑器 的 快捷键 --- 常用 的 都比较全

Linux中vim编辑器的功能非常强大,许多常用快捷键用起来非常方便,这里将我学vim入门时学的一些常用的快捷键分享给大家一下,希望可以帮助你们. 这个是我将鸟哥书上的进行了一下整理的,希望不要涉及到版权问题. 1.一般模式下可用的快捷键:光标移动.复制粘贴.搜寻取代等 2.一般模式切换到编辑模式的快捷键: 3.一般模式切换到指令模式: 4.vim区块选择: 5.vim多窗口功能: 6.vim环境设定:

Linux 的vim编辑器

Linux 的vim编辑器 一.什么是VIM? Vim是从 vi 发展出来的一个文本编辑器.代码补完.编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用.简单的来说,vi 是老式的字处理器,不过功能已经很齐全了,但是还是有可以进步的地方. vim 则可以说是程序开发者的一项很好用的工具. 二.VIM的分类 基本上 vi/vim 共分为三种模式,分别是命令模式(Command mode),输入模式(Insert mode)和底线命令模式(Last line mode) 1.命令模式 控制

Linux中VIM编辑器的使用

vim编辑器是我们在Linux中不可或缺的一部分,我们通常会使用它去自定义编辑文本已达到我们的需求,那么vim文本编辑器具体要怎么使用呢.今天跟大家分享一下vim编辑器的使用: vim编辑器模式介绍 vim文本编辑器概述: 作用:创建或修改文本文件: 维护Linux系统中的各种配置文件. Linux中常用的文本编辑器: vi:类Unix系统中默认的文本编辑器: vim:vi编辑器的增强版本,习惯上也称为vi,我们可以将vim设置别名,以便执行vi时自动调用增强版编辑器.具体代码如下 [[emai

Linux的vim编辑器中的翻页命令

当我们进入Linux的vim编辑器查看脚本时,按上下键查看是不是非常慢?这个时候就要用到我们的翻页快捷键了,快捷键命令如: 整页翻页命令为:    Ctrl + f 键   f 的英文全拼为:forward: Ctrl + b 键  b 的英文全拼为:backWord: 翻半页命令为:      Ctrl + d 键  d 的英文全拼为:down: Ctrl + u 键  u 的英文全拼为:up: 直接查看该脚本的最后一行:输入:$,然后回车: 在键盘按下大写G : 在键盘按Shift + g:

Linux上vim编辑器快速入门

1. 简介 vim编辑器是功能强大的跨平台文本文件编辑工具,继承自Unix系统的vi编辑器,支持Linux/Mac OS X/Windows系统,利用它可以建立.修改文本文件. 打开文件方式如下: # vim [options] [file ..]         选项      文件         +#:打开文件后,直接让光标处于第#行的行首:         +/PATTERN:打开文件后,直接让光标处于第一个被PATTERN匹配到的行的行首: FOR EXAMPLE: [[email p

linux下vim编辑器查找 关键字

在  linux  vim 编辑器 下查找   关键字 方法[一] 1?short_open_tag 1 : 它的意思是vim 打开文件的第一行 ? : 它的意思是反向查找 short_open_tag : 它是要查找的关键字

Linux下vim编辑器命令大全

背景: vim是Linux下面的一款编辑器,一般通过vim命令进行对Linux操作系统下面的文本文件进行操作,只要熟练运用,功能十分强大. 介绍: vim编辑器有3种模式,命令模式.输入模式.末行模式. 例如:在/root路径下面有一个123.txt文件.首先使用命令打开文件 vim /root/123.txt 便进入了命令模式 然后在键盘上按下i键(表示insert),可以向改文件输入其他文本信息,便进入了输入模式 然后按下键盘ECS键,便进入了末行模式,末行模式支持也支持很多命令,例如:wq