linux用文本编译器打开时显示行数,Linux文本处理---文本编译器vim

vim:(visual interface improved),是一款全屏的纯文本ASSCII的编辑器,是 vi 的加强版,相比较 vi 来讲,vim支持语法高亮等特色。正则表达式

vim是一种模式化的编辑器,常见的模式有编辑模式(命令模式),输入模式,末行模式,可视化模式,多文件模式,多窗口模式等。vim

Usage: vim [option]... [FILE]...编辑器

vim 选项+ide

vim + file 打开文件时光标处在最后一行的行首spa

vim +3 file  打开文件时光标处在第三行的行首命令行

1、各个模式的介绍orm

编辑模式(命令模式):这个模式下键盘操做一般被理解为编辑命令接口

输入模式:此模式下用户能够输入文本内容ci

末行模式:vim内置命令行接口,执行vim内置变量字符串

可视化模式:此模式下用户能够高亮选择文本的内容

多文件模式:此模式下用户一次能够打开多个文件

多窗口模式:此模式下在全屏下可显示多个窗口来编辑文件

2、各个模式之间的切换

模式切换类型

切换方法

编辑模式 -> 输入模式

i,a

在光标所在处的前方,后方转换为输入模式

I,A

在光标所在处的行首,行尾转换为输入模式

o,O

在光标所在行的上一行,下一行转换为输入模式

输入模式 -> 编辑模式

ESC

编辑模式 -> 末行模式

:

末行模式-->编辑模式

ESC

3、编辑模式(命令模式)下的文本操做

操做分类

具体方法及意义

光标移动

字符间移动

j,k

j:向下移动光标      k:向下移动光标

h,l

h:向左移动光标      l:向右移动光标

#{h|j|k|l}

3h:向左跳跃光标3个字符   4j:向下跳跃光标4行

单词间移动

w

w:光标移动到下一个单词词尾

e,b

e:光标跳跃到当前或下一个单词词尾

b:光标跳跃到当前或上一个单词词首

#{w|e|b}

3w:光标跳跃到下3个单词的词尾

4b:光标跳跃到上3或4(光标刚好在词首)个单词的词首

行内移动

0,$

0:光标跳跃到绝对行首

$:光标跳跃到绝对行尾

^

^:光标跳跃到行首第一个非空白字符开头处

Ctrl+f

Ctrl+b

Ctrl+u

Ctrl+d

向文件尾部翻一屏

向文件首部翻一屏

向文件尾部翻半屏

向文件首部翻半屏

行间移动

#G

5G:将光标跳跃到第5行行首第一个非空白字符开头处

G,gg

G:将光标跳跃到行尾第一个非空白字符开头处

gg:将光标跳跃到行首第一个非空白字符开头处

编辑命令

x类

x,#x

x:删除光标所在处的字符

4x:删除光标所在处以及以后的共4个字符

d类

dd D #dd d#d

dd:删除光标所在处的一整行

D:同 d$ 同样,删除光标所在处行向后的全部内容

d结合w,e,b,^,$,0,G,gg一块儿使用

dgg:删除光标处以及光标处到行首的全部内容

db:删除光标处到光标处前单词的单词首部的内容

y类

yy,Y,y#y,#yy

yy Y:复制光标所在处的整行

y3y 3yy:复制光标所在处的及如下共3行

结合w,e,b,^,$,0,G,gg一块儿使用

yw:复制光标所在处向后一个单词首部的的字符

y$:复制光标所在处向后这行全部的的字符

yG:复制光标所在处向后文件尾部行全部的的字符

p类

p P

行级别:

p: 粘贴于当前行下方

P:  粘贴于当前行上方

小于行级别:

p: 粘贴于当前光标所在处的后方

P:粘贴于当前光标所在处的前方

c类

cc,#c

cc C:删除光标所在处的一整行,并进入输入模式

结合w,e,b,^,$,0,G,gg一块儿使用

cgg:删除光标所在处到文件行首的全部内容,并进入输入模式

c0:删除光标所在处到行首的全部内容,并进入输入模式

撤消编辑

u,#u

u:撤销上一次操做

3u:撤销前3次操做

ctrl+r

撤销上一次撤销操做

重复

.

重复上一条命令

4、末行模式

末行模式是执行一些vim的内置变量,以及问搜索、替换、删除等操做。在这里要引入内容定界。

内容定界的格式是:startpos,endpos。说明在末行模式下操做的范围。

内容定界符

具体意义

#

#:第#行

3:表示第三行

.

.:表示当前行

$

$:表示最后一行

%

%:表示全文 等价于 1,$

$-#    .+#

支持像$-2, .+2等内容定界.+1,$-1 表示当前行的下一行至倒数第二行

下面介绍末行模式的的操做方法以及意义,这些操做都是结合内容定界符一块儿使用的。

种类

具体意义

c d y

:%y 复制整个文本内容

:.,30d 删除当前行道30行的内容

100c:删除100的内容,并变为输入模式,在100行的行首

w r

w /path/to/somefile: 将选定范围内的内容保存至某文件

r /path/from/somefile: 将指定的文件中的内容读取到指定位置中

`例如:

:1,100w /tmp/test.txt 将1,100的内容保存到/tmp/test.txt文件中

:54r /etc/passwd 将/etc/passwd文件内容加入到54行的下面

s///gi

s/要查找内容的模式/要替换的字符串或者引用/gi

其中g: global, 全行替换  i: 不区分字符大小写

:%s@^[[:space:]]\{1,\}@@g 删除整个文本的空白行

/ ?

/ ? 是命令行搜索,支持正则表达式

/pattern 向下搜索

?pattern 向上搜索

N n 使用n,N上下查看

命令

:set nu    显示行号

:set nonu   取消显示行号

:set ai   自动缩进

:set noai  取消自动缩进

:set ic   设置忽略大小写

:set noic 取消设置忽略大小写

:set sm  设置括号匹配

:set nosm 取消设置括号匹配

:syntax on|off 设置语法高亮

:set hlsearch 设置搜索高亮

:set nohlsearch 取消设置搜索高亮

5、可视化模式,多文件模式,多窗口模式

1)可视化

v:指的是国标所走过的字符

V:指的是国标所走过的行

例如:在某些连续的行首加入#号。编辑模式下:V-->选中行--->I--->#---->ESC就可完成此功能。

2)多文件模式

vi file1 file2 file3... 在末行模式下可使用next,previous,last,first关键字打开下一个,上一个,最后一个,第一个文件。使用wqall能够保存所有文件。

3)多窗口模式

多文件模式:vim -o:水平分割窗口

-O:垂直分割窗口

单文件模式:

Ctrl+w, s: 水平分割

Ctrl+w, v: 垂直分割

6、配置文件

/etc/vimrc:全局的

~/.vimrc:用户模式下的配置文件

补充:

1.设置制表符宽度:set tabstop=4:set softtabstop=42.设置缩进的空格数:set shiftwidth=43.每行的缩进值与上一行相等:set autoindent4.使用C/C++语言的自动缩进方式

:set cindent5.显示行号:set nu6.将搜索内容反白:set hlsearch7.能够删除任意值:set backspace=2

本文侧重介绍的是vim文本编辑器的使用。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值