Vi对于linux的重要性和受欢迎的程度在此一律不表。此刻互联网上不少介绍vi的文章和博客,相信写得比我好的也不在少数。然而为什么我依然写这样一篇文章呢?我对linux知识和了解也都来自于互联网,很难想象在没有互联网的情况下我能不能学会这些最基本的操作。其实用linux也有些年头了,但基本也就停留在小白的阶段。常常抱着够用就行的心态,因而学懂那几行常用的命令后也就再没有深入地了解了。常听人说起,写和讲是为了更好地学。由于各种原因,也有段时间没用vi了。当用起的时候常常会有个印象但又不确定,因而常常GG也就少不了了。与其GG,不如自己记录起来偶尔翻翻。与其说是一篇文章倒不如说是我的私人笔记,文章全然凭自己的理解,写得不明白或者有误的地方也请指出。在我对Vi没有彻底熟烂于心之前,这都是一篇尚未完成的文章。
vi 创建并编辑文件
vi test.txt
按i、a或者o进入编辑模式
然后输入
this is a test file!
按键盘又上角的“esc”键退出编辑模式
现在复制上面的行并粘贴,输入“yy”复制,然后输入“p”完成粘贴
this is a test file!
this is a test file!
this is a test file!
this is a test file!
1 this is a test file!
2 this is a test file!
3 this is a test file!
4 this is a test file!
将光标移到指定行号
输入“/test”即可查找test这个字符串了,按“n”即可查找下一个想匹配的字符串
x可删除光标后面的字符,5x表示删除光标后的5个字符。同理dd可删除光标所在行,5dd则是删除光标后的5行(包含光标所在行)
undo上一次改变。
undo当前行所有的改变。
redo被undo了的改变。
向前翻屏
向后翻屏
向前翻半屏
向后翻半屏
批量替换内容
:%s/原有内容/新内容/g