每天2分钟学习unixlinux系统shell编程(八)文本
俗话说得好,工欲善其事,必先利其器,有了前面那么多的命令铺垫,终于可以讲一下文本编辑器vi的使用了,学了这个之后就可以开始真正的shell编程了。除开VI这种终端下命令行试的编辑工具,还有gedit,kate等图形化的文本编辑工具。但是用下来还是习惯vi。为什么会形成这样的习惯呢?首先图形化的工具需要安装桌面环境,这跑起来费资源,二是因为vi基本系统上都是自带的,默认安装。记得我刚才学习编程时主要就是vi直接写代码的。vi玩得溜的话也是很方便的。今天只是学习基本的使用。写代码是够了的。下面我们开始。
学习vi看似枯燥无味,但当你实践起来时发现像打游戏一样,只要熟悉了之后其实还是很快的。一、VI的三种操作模式介绍1。1命令模式
该模式直接通过命令编辑,像删除,复制等1。2文本编辑模式
主要用于输入文本时切换此模式1。3底行命令模式
主要用于字符搜索,替换,定位某行,对vi进行简单设置等。二、VI的命令模式2。1在命令模式下进入文本编辑模式的方法
首先进入VI,在终端上直接输入vimyfile回车就进入了vi的编辑器了。此时默认进入的是命令模式,切换到文本编辑模式的方法有三种:在命令模式下按下i键表示在光标所处的位置插入文字在命令模式下按下a键表示在光标所处的位置下一个字插入文字在命令模式下按下o键表示在当前行的下面插入新的一行,开始写文字。
进入了文本编辑模式之后啊,就可以进行自由的输入文本了,写代码了。
如何退出文本编辑模式呢?在文本编辑模式下按下键盘ESC键就切换到了命令模式。2。2光标的移动
有两种一种键盘上面方向键来移动,一种是字母:h向左,j向下,k向上,l向右。这就跟玩游戏的应该差不多吧。2。3位置快捷键ctrlf向前翻页shift9光标定位到行首shift0光标定位到行尾w下一个单词的开始e下一个单词的结尾b上一个单词开头shift移动光标到所在行的行尾2。4删除文字x删除光标位置后面的一个字符x例如5x删除光标后面的5个字符X也就是shiftx删除光标位置的前面一个字符X例如5X,也就是5、shift、x依次下按。删除光标前面5个字符dd删除光标所在的行dd例如5dd删除光标所在行及下面的5行,注意了,这里包括当前行相当于共删除了6行。2。5复制粘贴p粘贴缓冲区的内容yw将光标所在位置字符一直到单词结尾复制到缓冲区yy复制光标所在行到缓冲区yy如5yy复制光标所在行以及下面5行到缓冲区2。6取代r取代当标所处的字符,当按下r键后再按要取代为的字符。R一直取代,直到按下ESC键。当按下R键后,持续输入要取代为的字符,直接到按下ESC键。2。7恢复或者撤销
按u键是撤销操作,一直按就一直撤销上一步操作。2。8跳到指定的行
ctrlg列出当前行行号在最下面可以看到。
G这个命令的意思就是如果想跳到第2行,则按下2、shift、g依次按下这三个键就可以了。3。底行命令模式3。1进行入底行命令模式
在命令模式下按shft:进入底行命令模式3。2列出每一行的行号
在底行命令模式下:setnu回车。3。3跳到指定的行
在底行命令模式下输入行号,回车。3。4搜索关键字
在底行命令模式下输入后面关键字,回车。n跳到下一个关键字出现的位置N也就是shiftn跳到上一个关键字出现的位置n个空格回车取消选中3。5替换字符串
在底行命令模式输入:sstringreplaceg
作用是全局搜索string并替换为replace。3。6保存退出保存文件在底行命令模式输入:w回车保存并退出在底行命令模式输入:wq回车不保存并强制退出在底行命令模式输入:q!回车退出在底行命令模式输入:q回车
这一期到这里就把vi的基本用法给介绍完了。后面我们再抽空继续。感谢大家支持。