linux运⾏程序vi模式命令,记录Linux系统vi(vim)编辑器命令
使⽤教程简单介绍
⼤鸟也是个菜鸟啊,特别是linux系统的vi编辑器命令就不熟悉,所以⼤鸟从⽹上了个使⽤教程贴在⾃⼰的博客⾥,以备查询之⽤!
vi是“visual interface”
vi(vim)是上Linux⾮常常⽤的代码编辑器,很多Linux发⾏版都默认安装了vi(vim)。vi(vim)命令繁多但是如果使⽤灵活之后将会⼤⼤提⾼效率。vi是“visual interface”的缩写,vim是vi IMproved(增强版的vi)。在⼀般的系统管理维护中vi就够⽤,如果想使⽤代码加亮的话可以使⽤vim
基本上vi可以分为三种状态,分别是命令模式(command mode)、插⼊模式(Insert mode)和底⾏模式(last line mode),各模式的功能区分如下:
1) 命令模式(command mode)
控制屏幕光标的移动,字符、字或⾏的删除,移动复制某区段及进⼊插⼊模式、底⾏模式下。
2) 插⼊模式(Insert mode)
只有在插⼊模式下,才可以做⽂字输⼊,按ESC键可回到命令模式。
3) 底⾏模式(last line mode)
将⽂件保存或退出vi,也可以设置编辑环境,如寻字符串、列出⾏号。
不过⼀般我们在使⽤时把vi简化成两个模式,就是将底⾏模式也算⼊命令模式。
⼀、打开⽂件、保存、关闭⽂件(vi命令模式下使⽤)
vi filename      //打开filename⽂件
:w      //保存⽂件
:w yusi123 //保存⾄yusi123⽂件
:q          //退出编辑器,如果⽂件已修改请使⽤下⾯的命令
:q!        //退出编辑器,且不保存
:wq        //退出编辑器,且保存⽂件
⼆、插⼊⽂本或⾏(vi命令模式下使⽤,执⾏下⾯命令后将进⼊插⼊模式,按ESC键可退出插⼊模式)
a      //在当前光标位置的右边添加⽂本
i      //在当前光标位置的左边添加⽂本
A    //在当前⾏的末尾位置添加⽂本
I      //在当前⾏的开始处添加⽂本(⾮空字符的⾏⾸)
O    //在当前⾏的上⾯新建⼀⾏
o    //在当前⾏的下⾯新建⼀⾏
R    //替换(覆盖)当前光标位置及后⾯的若⼲⽂本
J    //合并光标所在⾏及下⼀⾏为⼀⾏(依然在命令模式)
三、移动光标(vi命令模式下使⽤)
vi可以直接⽤键盘上的光标来上下左右移动,但正规的vi是⽤⼩写英⽂字母 h 、 j 、 k 、 l ,分别控制光标左、下、上、右移⼀格。按 Ctrl+b :屏幕往后移动⼀页。
按 Ctrl+f :屏幕往前移动⼀页。
按 Ctrl+u :屏幕往后移动半页。
按 Ctrl+d :屏幕往前移动半页。
按数字 0 :移到当前⾏的开头。
按 G :移动到⽂章的最后。
按 $ :移动到光标所在⾏的⾏尾。
按 ^ :移动到光标所在⾏的⾏⾸。
按 w :光标跳到下个字的开头。
按 e :光标跳到下个字的字尾。
按 b :光标回到上个字的开头。
按 #l :光标往后移的第#个位置,如:5l,56l .
四、删除、恢复字符或⾏(vi命令模式下使⽤)
x :每按⼀次,删除光标所在位置的后⾯⼀个字符。
#x :删除光标所在位置的后⾯#个字符,例如, 6x 表⽰删除光标所在位置的后⾯6个字符。
X :每按⼀次,删除光标所在位置的前⾯⼀个字符。
#X :删除光标所在位置的前⾯#个字符,例如, 20X 表⽰删除光标所在位置的前⾯20个字符。
dd :删除光标所在⾏。
#dd :从光标所在⾏开始删除#⾏。
五、搜索(vi命令模式下使⽤)
/yusi123    //向光标下搜索yusi123字符串
yusi123    //向光标上搜索yusi123字符串
n          //向下搜索前⼀个搜素动作
N        //向上搜索前⼀个搜索动作
六、跳⾄指定⾏(vi命令模式下使⽤)
n+        //向下跳n⾏
n-        //向上跳n⾏
nG        //跳到⾏号为n的⾏
G          //跳⾄⽂件的底部
七、设置⾏号(vi命令模式下使⽤)
:set  nu    //显⽰⾏号
linux系统vim编辑器:set nonu    //取消显⽰⾏号
⼋、复制、粘贴(vi命令模式下使⽤)
yy    //将当前⾏复制到缓存区,也可以⽤ “ayy 复制,”a 为缓冲区,a也可以替换为a到z的任意字母,可以完成多个复制任务。
nyy  //将当前⾏向下n⾏复制到缓冲区,也可以⽤ “anyy 复制,”a 为缓冲区,a也可以替换为a到z的任意字母,可以完成多个复制任务。
yw    //复制从光标开始到词尾的字符。
nyw  //复制从光标开始的n个单词。
y^      //复制从光标到⾏⾸的内容。
y$      //复制从光标到⾏尾的内容。
p        //粘贴剪切板⾥的内容在光标后,如果使⽤了前⾯的⾃定义缓冲区,建议使⽤”ap 进⾏粘贴。
P        //粘贴剪切板⾥的内容在光标前,如果使⽤了前⾯的⾃定义缓冲区,建议使⽤”aP 进⾏粘贴。
九、替换(vi命令模式下使⽤)
:s/old/new      //⽤new替换⾏中⾸次出现的old
:s/old/new/g        //⽤new替换⾏中所有的old
:n,m s/old/new/g    //⽤new替换从n到m⾏⾥所有的old
:%s/old/new/g      //⽤new替换当前⽂件⾥所有的old
⼗、编辑其他⽂件
:e otherfilename    //编辑⽂件名为otherfilename的⽂件。
⼗⼀、修改⽂件格式
:set fileformat=unix  //将⽂件修改为unix格式,如win下⾯的⽂本⽂件在linux下会出现^M。
注意:如果不知道⾃⼰处在什么模式时可以按2次Esc键即可回到命令模式,会有最后提醒⼀点:注意⼤⼩写

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。