深入详解Linux vi命令
创始人
2024-06-18 04:50:53
0

vi命令还是比较常用的,于是我研究了一下Linux vi命令,在这里拿出来和大家分享一下,希望对大家有用。在屏幕上移动Linux vi提供了三个关于光标在全屏幕上移动并且文件本身不发生滚动的命令。它们分别是H、M和L命令。

Linux vi H命令

Linux vi 命令将光标移至屏幕首行的行首(即左上角),也就是当前屏幕的***行,而不是整个文件的***行。利用此命令可以快速将光标移至屏幕顶部。若在H命令之前加上数字n,则将光标移至第n行的行首。

屏幕显示如下内容:
#include
main ( )
{ int k ;
for ( k=0 ; k<3 ; k++) add( ); }
add( )
{ static int x=0;
x++ ;
printf(“x=%d\n”, x);
“ example.c” [ New File]

在命令模式下输入4H命令后,光标移到以for开头的这一行的字母f上。值得一提的是,使用命令dH将会删除从光标当前所在行至所显示屏幕首行的全部内容。

Linux vi M命令

该命令将光标移至屏幕显示文件的中间行的行首。即如果当前屏幕已经充满,则移动到整个屏幕的中间行;如果并未充满,则移动到文本的那些行的中间行。利用此命令可以快速地将光标从屏幕的任意位置移至屏幕显示文件的中间行的行首。例如,在上面屏幕显示的情况下(不论光标在屏幕的何处),在命令模式下,输入命令M之后,光标都将移到add这一行的字母a上。同样值得一提的是,使用命令dM将会删除从光标当前所在行至屏幕显示文件的中间行的全部内容。

Linux vi L命令

当文件显示内容超过一屏时,该命令将光标移至屏幕上的***行的行首;当文件显示内容不足一屏时,该命令将光标移至文件的***一行的行首。可见,利用此命令可以快速准确地将光标移至屏幕底部或文件的***一行。若在L命令之前加上数字n,则将光标移至从屏幕底部算起第n行的行首。例如,在上面屏幕显示的情况下(不论光标在屏幕的何处),在命令模式下,输入命令3L之后,光标都将移到x++这一行的字母x上。
同样值得一提的是,使用命令dL将会删除从光标当前行至屏幕底行的全部内容。

按字移动光标首先介绍一下Linux vi中“字”的概念。在Vi中“字”有两种含义。一种是广义的字,它可以是两个空格之间的任何内容。

在文件example.c 中的第4行:
{int k; 它只有2个字,一个是{int ,另一个是k;
Vi中另一种字是狭义上的字,在此种意义之下,英文单词、标点符号和非字母字符(如!、@、#、$、%、^、&、*、(、)、-、+、{、}、[、]、~、|、\、<、>、/等)均被当成是一个字。因此,上面那一行中就包括{、int、k、;这4个字。 Vi中使用大写命令一般就是指将字作为广义来对待,使用小写命令就是作为狭义对待。

搞清楚Linux vi中字的含义后,我们就可以介绍按字移动光标的命令了。Linux vi 一共提供了三组关于按字移动光标的命令,分别是:

Linux vi w和W命令

将光标右移至下一个字的字首;

屏幕上显示如下:
printf(“Hello Mr.Huang!\n”);
现在使用w命令,把光标移到下一个字(狭义)的字首“(”上:
printf(“Hello Mr.Huang!\n”);
下面使用W命令,将把光标移到下一个字(广义)的字首“M”上:
printf(“Hello Mr.Huang!\n”);
 
Linux vi e和E命令

如果光标起始位置处于字内(即非字尾处),则该命令将把光标移到本字字尾;如果光标起始位置处于字尾,则该命令将把光标移动到下一个字的字尾。

Linux vi b和B

如果光标处于所在字内(即非字首),则该命令将把光标移至本字字首;如果光标处于所在字字首,则该命令将把光标移到上一个字的字首。

屏幕显示如下:
printf(“Hello Mr.Huang!\n”);
现在使用b命令,由于光标处于该字中间,所以光标移动到本字字首“H”处:
printf(“Hello Mr.Huang!\n”);
如果使用B命令,则如下所示:
printf(“Hello Mr.Huang!\n”);

按句移动光标 在Vi中,一个句子被定义为是以逗号(,)、句号(.)、问号(?)和感叹号(!)结尾,且其后面跟着至少两个以上(含两个)空格或一个换行符的字符序列。 Linux vi提供了关于按句移动光标的两个命令,分别为:
1. 命令将光标移至上一个句子的开头。
2. 命令该命令将光标移至下一个句子的开头。

按段移动光标在Linux vi中,一个段被定义为是以一个空白行开始和结束的片段。Vi提供了关于按段移动光标的两个命令,分别为:
1. 命令该命令将光标向前移至上一个段的开头;
2. 命令该命令将光标向后移至下一个段的开头。

屏幕滚动

屏幕Linux vi命令是以屏幕为单位移动光标的,常用于文件的滚屏和分页。需要注意的是,屏幕命令不是光标移动命令,不能作为文本限定符用于删除命令中。在命令模式下和文本输入模式下均可以使用屏幕滚动命令。

【编辑推荐】

  1. linux vi编辑器概念层层讲解
  2. 关于linux vi命令替换的使用说明
  3. 在linux vi命令行中添加行号的小技巧
  4. 实用技巧:linux vi命令快捷键集合
  5. linux vi命令详解及使用技巧集锦

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
着眼MAC地址,解救无法享受D... 在安装了DHCP服务器的局域网环境中,每一台工作站在上网之前,都要先从DHCP服务器那里享受到地址动...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...