授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
授予每个自然周发布7篇到8篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
《原力计划【第二季】》第一期主题勋章 ,第一期活动已经结束啦,小伙伴们可以去参加第二期打卡挑战活动获取更多勋章哦。
vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单地介绍一下它的用法和一小部分指令。由于对Unix及Linux系统的任何版本,vi编辑器是完全相同的,因此您可以在其他任何介绍vi的地方进一步了解它。Vi也是Linux中最基本的文本编辑器,学会它后,您将在Linux的世界里畅行无阻。
只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。3)底行模式(last line mode)
进入vi在系统提示符号输入vi及文件名称后,进入vi之后,是处于「命令行模式(command mode)」,您要切换到「插入模式(Insert mode)」才能够输入文字。初次使用vi的人都会想先用上下左右键移动光标,结果电脑一直哔哔叫,把自己气个半死,所以进入vi后,先不要乱动,转换到「插入模式(Insert mode)」再说吧!
). 插入模式按「i」切换进入插入模式「insert mode」,按i进入插入模式后是从光标当前位置开始输入文件;
「X」:大写的X,每按一次,删除光标所在位置的前面一个字符。「#X」:例如,「20X」表示删除光标所在位置的前面20个字符。
「yy」:复制光标所在行到缓冲区。「#yy」:例如,「6yy」表示拷贝从光标所在的该行往下数6行文字。
1、用vi打开文件后,是处于「命令行模式(command mode)」,您要切换到「插入模式(Insert mode)」才能够输入文字。切换方法:在「命令行模式(command mode)」下按一下字母「i」就可以进入「插入模式(Insert mode)」,这时候你就可以开始输入文字了。
该命令将光标移至屏幕显示文件的中间行的行首。即如果当前屏幕已经充满,则移动到整个屏幕的中间行;如果并未充满,则移动到文本的那些行的中间行。利用此命令可以快速地将光标从屏幕的任意位置移至屏幕显示文件的中间行的行首。例如,在上面屏幕显示的情况下(不论光标在屏幕的何处),在命令模式下,输入命令M之后,光标都将移到add这一行的字母a上。
当文件显示内容超过一屏时,该命令将光标移至屏幕上的最底行的行首;当文件显示内容不足一屏时,该命令将光标移至文件的最后一行的行首。可见,利用此命令可以快速准确地将光标移至屏幕底部或文件的最后一行。若在L命令之前加上数字n,则将光标移至从屏幕底部算起第n行的行首。例如,在上面屏幕显示的情况下(不论光标在屏幕的何处),在命令模式下,输入命令3L之后,光标都将移到x++这一行的字母x上。
按字移动光标首先介绍一下Vi中“字”的概念。在Vi中“字”有两种含义。一种是广义的字,它可以是两个空格之间的任何内容。另一种字是狭义上的字,在此种意义之下,英文单词、标点符号和非字母字符(如!、@、#、$、%、^、&、*、(、)、-、+、{、}、[、]、~、、、、、/等)均被当成是一个字。因此,上面那一行中就包括{、int、k、;这4个字。
按句移动光标在Vi中,一个句子被定义为是以逗号(,)、句号(.)、问号(?)和感叹号(!)结尾,且其后面跟着至少两个以上(含两个)空格或一个换行符的字符序列。
按段移动光标在Vi中,一个段被定义为是以一个空白行开始和结束的片段。Vi提供了关于按段移动光标的两个命令,分别为:
屏幕滚动屏幕命令是以屏幕为单位移动光标的,常用于文件的滚屏和分页。需要注意的是,屏幕命令不是光标移动命令,不能作为文本限定符用于删除命令中。
· Ctrl+d 将屏幕向后(文件尾方向)翻滚半屏。可以在这两个命令之前加上一个数字n,则屏幕向前或向后翻滚n行。并且这个值被系统记住,以后再用 Ctrl+u 和 Ctrl+d 命令滚屏时,还滚相应的行数。
· Ctrl+b 将屏幕向文件首方向翻滚一整屏(即一页)。同样也可以在这两个命令之前加上一个数字n,则屏幕向前或向后移动n页。
打开(open)命令不论是Insert命令也好,还是append命令也好,所插入的内容都是从当前行中的某个位置开始的。若我们希望在某行之前或某行之后插入一些新行,则应使用open命令。
文本删除在编辑文本时,经常需要删除一些不需要的文本,我们可以用键将输错或不需要的文本删除,但此时有一个限制就是当删到行头之后,再想删上面那行的内容是不可能的。在命令模式下,Vi提供了许多删除命令。这些命令大多是以d开头的。常用的有:
d0:删除从光标前一个字符开始到行首的内容。dw:删除一个单词。若光标处在某个词的中间,则从光标所在位置开始删至词尾。同dd命令一样,可在dw之前加一个数字n,表示删除n个指定的单词。
如果用户不小心进行了误删除操作,也不要紧,Vi提供了恢复误操作的命令,并且可以将恢复的内容移动,放在文本的任何地方。恢复命令用² np,其中n为寄存器号。这是因为Vi内部有9个用于维护删除操作的寄存器,分别用数字1,2,¼ ,9表示,它们分别保存以往用dd命令删除的内容。这些寄存器组成一个队列,例如最近一次使用dd命令删除的内容被放到寄存器1中;当下次再使用dd命令删除文本内容时,Vi将把寄存器1的内容转存到寄存器2中,而寄存器1中又将是最近一次dd命令删除的内容。以此类推,Vi可以保存有最近九次用dd命令删除的内容,而前面的用dd命令删除的内容则被抛弃。
取消上一命令有两种形式,在命令模式下键入字符u和U。它们的功能都是取消刚才输入的命令,恢复到原来的情况。小写u和大写U在具体细节上有所不同,二者的区别在于,大写U命令的功能是恢复到误操作命令前的情况,即如果插入命令后使用U命令,就删除刚刚插入的内容;如果删除命令后使用U命令,就相当于在光标处又插入刚刚删除的内容。这里把所有修改文本的命令都视为插入命令。也就是说,U命令只能取消前一步操作,如果用U命令撤消了前一步操作,当再按U键时,并不是撤消再前一步的操作,而是撤消了刚才U命令执行的操作,也就是又恢复到第一次使用U命令之前的状态,结果是什么都没做。而小写u命令的功能是把当前行恢复成被编辑前的状态,而不管此行被编辑了多少次。
文本内容的修改是指在编辑过程中,可以对文本中的某些字符,某些行进行修改,即用新输入的文本代替需要修改的老文本,它等于先用删除命令删除需要修改的内容,然后再利用插入命令插入新的内容。所以在使用修改命令后,vi进入到文本输入模式下,当输入完新的内容后,一定要再按回到命令模式,否则Vi会一直认为是在文本输入模式下,此时输入的任何内容都被认为是修改的新内容。
当在命令C之前加上数字n时,表示可以修改指定行数的内容。例如,3C命令就表示把光标所在位置的字符之后(注意不是整行)直到下面两个整行的内容删除,由随后输入的内容代替。cc
若在命令R之前加上一个数字,例如5R,则表示新输入的文本重复出现5次,但只取代一个被输入文本所覆盖的字符序列,当前行中未被覆盖的内容仍保留下来,只是位置相应右移。值得一提的是,利用R取代文本内容时,新输入的文本可以占多行,取代时也只有光标所在行的对应字符被覆盖。
如果只用一个新字符替换光标所在字符,则s命令与r命令功能类似,如sh与rh的作用都是将光标所在字符变为h。但二者也有区别,r命令仅完成置换,而s命令在完成置换同时,工作模式从命令方式转为文本输入方式。因此,s命令的一般使用方式是:s随后是要替换的正文,最后一定是, 结束文本输入模式,返回到命令模式。
可以在s前面加一个数字n,则表示用s后输入的文本替换从光标所在字符开始及其后的n-1个字符(共n个字符)。S(大写):该命令表示用新打入的正文替换光标当前行(整行)(不管光标位于何列)。
文本行的合并Vi提供了将文本中的某些行进行合并的命令。该命令用J(大写字母)表示,其功能是把光标所在行与下面一行合并为一行。
:set number需要说明的是,这里加的行号只是显示给用户看的,它们并不是文件内容的一部分。
在命令模式下,有很多移动光标的方法。不但可以使用四个方向键来移动光标,还可以用h、j、k、l这四个键代替四个方向键来移动光标,这样可以避免由于不同机器上的不同键盘定义所带来的矛盾,而且使用熟练后可以手不离开字母键盘位置就能完成所有操作,从而提高工作效率。另外还可以用、、和四个键或组合键移动光标。且以上这三种键在实现功能上是等价的。除此之外,还有一些移动光标的命令。下面对它们的工作方式介绍如下:
右向键的作用是将光标向右移动一个位置。若在向右键前先输入一个数字n,那么光标就向右移动n个位置。例如5l表示光标向右移动5个位置。需要注意的是,光标移动不能超过当前行的末尾。若给定的n超过光标当前位置至行尾的字符个数,如果用右向键,光标只能移到行尾;如果用,光标移到下面一行或几行的适当位置。
1.复制剪切粘贴撤销 复制: 复制一行则:yy 复制三行则:3yy,即从当前光标+下两行。 复制当前光标所在的位置到行尾:y$ 复制当前光标所在的位置到行首:y^剪切: 剪切一行:dd 前切三行:3dd,即从当前行+下两行被剪切了。 剪切当前行光标所在的位置到行尾:d$ 剪切当前行光标所在的位置到行首:d^粘贴: 用v选中文本之后可以按y进行复制,如果按d就表示剪切,之后按p进行粘贴。撤销与恢复:......
文章目录0.新建操作:1.查看操作2.删除操作3.复制操作4.移动操作:5.重命名操作:6.解压压缩操作0.新建操作:mkdir abc #新建一个文件夹touch abc.sh #新建一个文件1.查看操作查看目录:ll #显示目录文件详细信息查看文件内容:catheadtail

