CentOS系统Vi工作模式及常用命令使用用法

VI的工作模式

Vi有三种基本的工作模式:

1.指令模式(Command Mode):指令模式主要使用方向键移动光标位置进行文字的编辑

2.文本输入模式(Input Mode) :在指令模式下(Command Mode)按a/A键、i/I键、o/O键进入文本模式

3.行末模式(Last line Mode) :末行模式主要进行一些文字编辑辅助功能,比如字串搜索、替代、保存文件等操作

指令模式(Command Mode) 下输入 a、i、o进入文本输入模式(Input Mode)

文本输入模式(Input Mode)下按 ESC 进入指令模式(Command Mode)

指令模式(Command Mode)下输入 : 进入末行模式(Last line Mode)

末行模式(Last line Mode)下指令错误则返回指令模式(Command Mode)

VI命令常用用法

这里介绍的都是最基本最常用的vi命令~折腾vps够用了,比如退出vi的命令等等~

0、进入vi的命令

vi filename :打开或新建文件,并将光标置于第一行首

vi n filename :打开文件,并将光标置于第n行首

vi filename :打开文件,并将光标置于一行首

vi /pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处

vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filename

vi filename....filename :打开多个文件,依次进行编辑

1、指令模式(Command Mode)

PageDn ----- 向下移动一页

PageUp ----- 向上移动一页

0 -----光标移动至行首

h -----光标左移一格

l -----光标右移一格

j -----光标下移一行

k -----光标上移一行

$+A-----将光标移动到该行最后

d+方向键 -----删除文字

dd -----删除整行

pp -----整行复制

r -----修改光标所在的字符

S -----删除光标所在的列,并进入输入模式

2、文本输入模式(Input Mode)

a -----在光标后开始插入

A -----在行尾开始插入

i -----从光标所在位置前面开始插入

I -----从光标所在列的第一个非空白字元前面开始插入

o -----在光标所在列下新增一列并进入输入模式

O -----在光标所在列上方新增一列并进入输入模式

ESC -----返回命令行模式

3、末行模式(Last line Mode)

:q -----结束Vi程序,如果文件有过修改,先保存文件

:q! -----强制退出Vi程序(不保存修改)

:wq -----保存修改并退出程序

ZZ-----保存修改并退出程序(在没有开启Caps Lock时按住Shift键再按两个z键)

:set num -----设置行号

搬移与复制

==========

利用 delete 及 put 指令可完成资料搬移之目的。

利用 yank 及 put 指令可完成资料复制之目的。

yank 和 delete 可将指定的资料复制到记忆体缓冲区,而藉由 put 指令

可将缓冲区内的资料复制到萤幕上。

例:

搬移一行 .在该行执行 dd

.游标移至目的地

.执行 p

复制一行 .在该行执行 yy

.游标移至目的地

.执行 p

.指令重复

=========

在指令模式中,可在指令前面加入一数字 n,则此指令动作会重复执行 n

次。

例:

删除10行 .10dd

复制10行 .10yy

.游标移至目的地

.p

指标往下移10行 .10j

..取消前一动作(Undo)

===================

即复原执行上一指令前的内容。

u 恢复最後一个指令之前的结果。

U 恢复游标该行之所有改变。

..搜寻

=====

在vi中可搜寻某一字串,使游标移至该处。

/字串 往游标之後寻找该字串。

?字串 往游标之前寻找该字串。

n 往下继续寻找下一个相同的字串。

N 往上继续寻找下一个相同的字串。

..资料的连接

===========

J 句子的连接。将游标所在之下一行连接至游标该行的後面。

若某行资料太长亦可将其分成两行,只要将游标移至分开点,进入输入模式

(可利用 a、i等指令)再按《Enter》即可。

..环境的设定

===========

:set nu 设定资料的行号。

:set nonu 取消行号设定。

:set ai 自动内缩。

:set noai 取消自动内缩。

自动内缩(automatic indentation)

在编辑文件或程式时,有时会遇到需要内缩的状况,『:set ai』即提供自

动内缩的功能,用下例解释之:

.vi test

.(进入编辑视窗後)

this is the test for auto indent

《Tab》start indent ← :set ai (设自动内缩)

《Tab》data

《Tab》data

《Tab》data ← :set noai (取消自动内缩)

the end of auto indent.

.注: 可删除《Tab》字元。

从当前位置删除到行尾

d$

从当前位置复制到行尾

y$ 如果要粘贴到其他地方 p 就可以了

13.

:%s/old_word/new_word/g

这个指令是于在整个文件中替换特定字符串

14.光标控制

k:上移 nk 上移n行

j:下移 nj 下移n行

将光标移到第n行,按下 mk

将光标移到第m行,按下 "ay'k

即将第n到m的行存到a寄存器,以此类推,b,c........寄存器等

这样就可以将你常用的需要复用的内容粘贴到不同的寄存器中以备用

想粘贴到某处,直接将光标移到某地,按下 ‘ap 即可,以此类推,b,c........寄存器等

在当前屏幕中

H 跳到第一行

M 跳到中间一行

L 跳到最后一行

15.

表8-2 删除命令

删除命令操作

d l 删除当前字符(与x命令功能相同)

d 0 删除到某一行的开始位置

d ^ 删除到某一行的第一个字符位置(不包括空格或TA B字符)

d w 删除到某个单词的结尾位置

d 3 w 删除到第三个单词的结尾位置

d b 删除到某个单词的开始位置

d W 删除到某个以空格作为分隔符的单词的结尾位置

d B 删除到某个以空格作为分隔符的单词的开始位置

d 7 B 删除到前面7个以空格作为分隔符的单词的开始位置

d) 删除到某个语句的结尾位置

d 4) 删除到第四个语句的结尾位置

d( 删除到某个语句的开始位置

d } 删除到某个段落的结尾位置

d { 删除到某个段落的开始位置

d 7 { 删除到当前段落起始位置之前的第7个段落位置

d d 删除当前行

d /t e x t 删除从文本中出现“ t e x t”中所指定字样的位置,一直向前直到下一个该字样所出现的

位置(但不包括该字样)之间的内容

d fc 删除从文本中出现字符“c”的位置,一直向前直到下一个该字符所出现的位置(包括

该字符)之间的内容

d tc 删除当前行直到下一个字符“ c”所出现位置之间的内容

D 删除到某一行的结尾

d $ 删除到某一行的结尾

5 d d 删除从当前行所开始的5行内容

d L 删除直到屏幕上最后一行的内容

d H 删除直到屏幕上第一行的内容

d G 删除直到工作缓存区结尾的内容

d 1 G 删除直到工作缓存区开始的内容

替换命令

替换命令操作

s 将当前字符替换为一个或多个字符

S 将当前行替换为一个或多个字符

5 s 将从当前字符开始的5个字符替换为一个或多个字符

vi替换使用规则:

:g/s1/s/s2/s3/g

第一个g表示对每一个包括s1的行都进行替换,第二个g表示对每一行包括s1的行所有的s2都用s3替换

s表示替换,s2是要被替换的字符串,他可以和s1相同(如果相同的话用//代替),s3是替换字符串

(0)

相关推荐

  • CentOS系统中与时间的相关命令详解

    时间在任何系统里都是最基本的部分,必不可少.本文介绍CentOS系统中与时间的相关命令. 基本概念 硬件时钟(Hardware Clock) 硬件时钟,也叫实时时钟(RealTimeClock),或者 ...

  • 详解Linux系统中关机与重启相关命令的用法

    shutdownshutdown 以一种安全的方式关闭系统.所有登陆用户都可以看到关机信息提示,并且 login (1) 将被阻塞.可以指定立刻关机,也可以指定系统在一定的延时后关机.所有进程都将接收 ...

  • Linux下调整网卡的工作模式

    现在的网卡一般都是10/100M自适应工作模式,在配置网卡参数时我们很少考虑它的工作模式,但是在路由器、交换机、代理服务器等通信量比较大的关键设备上,我们应该为它指定正确的工作模式,这样可以提高通信效 ...

  • tplink路由器如何切换工作模式

    tplink路由器切换工作模式的设置方法 tp迷你路由器提供多种工作模式,分别为:Router(路由器).AP(无线接入点).Repeater(中继).Client(客户端).Bridge(桥接),适 ...

  • CentOS常用命令大全

    初学Linux系统,看的是鸟哥的Linux私房菜 基础学习篇(第三版),还在看书阶段中,感觉就是命令和参数难道记呢,还有各种权限设置,先整理了这些常用的命令,以便使用中查阅。 一:使用CentOS常用 ...

  • Linux系统中vim工具常用命令大全

    在linux下做开发,甚至是只做管理维护工作,也少不了Vim的使用。作为一个新手,我也是刚刚接触,本节将我日常使用或收集的Vim常用命令记录下来。 当然,直接在命令行上输入:vimtutor,就可以学 ...

  • CentOS常用命令小结

    下面,就来介绍这些CentOS常用命令。 一:使用CentOS常用命令查看cpu 复制代码 代码如下: more /proc/cpuinfo | grep "model name" grep "mod ...

  • 切换Linux系统下图形界面与Linux命令行模式

    本文为您讲解假如在Linux系统下实现图形界面与Linux命令行模式切换。 一、Linux系统安装的流程中默认语言是英文,而不是中文简体(安装流程中有两次制定语言选项,起决定作用的是第二次) 二、Li ...

  • Centos系统下查看和修改网卡Mac地址(附ifconfig命令格式)

    本文将为大家详细的介绍centos系统修改网卡Mac地址的方法,具体内容如下: 在文件/etc/sysconfig/network-scripts/ifcfg-eth0 中增加一行类似如下 MACAD ...