文本编辑
视频讲解
vi 操作:命令模式和插入模式
vi 操作:底行模式
前言
大家都习惯了Windows下面的文本编辑。用 Word、记事本这些软件来编辑。
但是,前面曾经说过,Linux下面的操作往往都是在命令行窗口(术语叫字符终端)里面进行的。
字符终端窗口没有图形界面,在这里面编辑文件 最常用的 就是 大名鼎鼎的 vi
。
学习vi并不是容易的事情,但是 几乎所有UNIX、LINUX系统都预装vi。
而且刚才也说了,我们操作Linux 往往是远程操作,没有图形界面,我们要修改一个文本文件,那么最快捷的方式就是用 vi。
vi有个加强版本叫做vim,两者常用的功能没有什么大的区别。
在比较新的 Linux 发行版本里面,都缺省将vi别名为vim了。
在命令行里敲入 vi 后面加要编辑的文件名,比如 vi byhy.txt
,就进入vi的界面了。
学习vi时,大家可能最不习惯的 就是: vi 有 3 种使用模式。
不同的模式,用户可以干的事情不同。
命令模式
执行vi abc.txt 文件名 命令,就打开了vi去编辑文件abc.txt,默认进入的就是命令模式
在该模式下,不可以输入文字,那干什么呢?
那命令模式下面我们通常可以干什么呢?
首先就是移动光标
当然 也可以通过键盘 方向键
来移动光标位置。
另外还支持下面的按键操作
按0或^ - 光标移动到所在行的行首
按$ - 光标移动到所在行的行尾
输入gg - 把光标移到文件开始位置
输入G - 把光标移到文件末尾
输入Ctrl + f - 往下翻一页
输入Ctrl + b - 往上翻一页
删除文字也是我们常做的操作
另外,还有下面这些操作
按yy – 复制光标所在的行
按p – 黏贴
按v,然后移动光标,可以选择内容,再按y复制选中的内容
按u – 撤销刚才所做的操作
按Ctrl+r – 重做被撤销当前所做的操作
按. – 重复刚才所做的操作
可能大家也发现了,上面说的命令模式下面的操作,都不可以直接输入文字到文件中。
要输入文字,就必须 切换到插入模式。
怎么切换到插入模式呢?
从命令模式进入插入模式的方式有:
进入到插入模式,就可以输入文字了。
另外,在命令模式下,我们还可以按冒号按键,切换到底线模式。 底线模式干什么? 后面再讲。
插入模式
插入模式是用来让 用户进行文件内容的输入的。
用户刚进入vi是命令模式, 想敲字符输入内容是不行的。必须进入插入模式,你才能输入字符。
在插入模式下,可以通过键盘方向键,来移动光标。
但是不能再 通过 ghjk 来移动光标了,因为现在你按这些按键就是输入对应的字符了。
在插入模式下,编辑文件的过程中,你经常需要切换回 命令模式,来删除字符、删除行,跳到上一页,到最后一行等等。
所以,我们使用vi,会非常频繁的在插入模式 和 命令模式之间切换, 大家要熟悉这种切换。
从插入模式切换到命令模式,就是输入按键 Esc,就是键盘左上角的那个按键。
您需要高效学习,找工作? 点击咨询 报名实战班
点击查看学员就业情况
底行模式
所谓 底行模式,就是在屏幕底部打开命令行,用来输入命令。
底行模式 主要是 输入命令 来 保存文件 或 退出vi程序、寻找字符串、列出行号等
注意:我们只能从命令模式进入底行模式。
所以,如果你现在是处于插入模式,必须先按Esc键进入命令模式后,再按冒号 :
或 /
进入底行模式。
底线模式常用操作有如下这些:
:wq
保存文件并退出
:q
不保存文件,并退出,如果文件做了修改,但有不想保存,需要用:q!
:q!
不保存文件,强制退出
:w
只保存文件,但是不退出vi,可以切换到输入模式下面继续编辑文件
:set nu
显示行号
/abc
在文件中查找abc字符。按 n
不停的往下查找,按 N
往上查找
:1,$s/string/replace/g
替换功能,把文件中的string,替换为replace
按Esc键,切换到命令模式