您的位置:首页 > 运维架构 > Linux

linux 下vi编辑的一些实用命令

2017-10-15 21:20 357 查看
linux 下vi编辑的一些实用命令(updating)

NOTE:特别命令
1、撤销上一个编辑操作:u 。

2、删除光标所在行到最后一行的内容(包括光标所在行的内容):按esc后,然后dG。

3、让光标移到首行:gg。

4、命令  ggVG
         解释:
                gg 让光标移到首行
                V   是进入Visual(可视)模式
                G  光标移到最后一行
                选中内容以后就可以其他的操作了,比如:
               d  删除选中内容
               y  复制选中内容到0号寄存器
               "+y  复制选中内容到+寄存器,也就是系统的剪贴板,供其他程序用
               全部删除:按esc后,然后dG
               全部复制:按esc后,然后ggyG
               全选高亮显示:按esc后,然后ggvG或者ggVG

5、删除所在行光标后面的内容:U.

6、要删除一个字符,只需要将光标移到该字符上按下"x"。

7、删除一整行内容使用"dd"命令,删除后下面的行会移上来填补空缺。

8、用":e!"命令放弃所有修改并重新载入该文件的原始内容。

9、按下大写‘X’
删除当前光标之前的字符。

10、移动到行首或行尾:"$"命令将光标移动到当前行行尾。如果你的键盘上有一个键,它的作用也一样。"^"命令将光标移动到当前行的第一个非空白字符上。"0"命令则总是把光标移动到当前行的第一个字符上。键也是如此。"$"命令还可接受一个计数,如"1$"会将光标移动到当前行行尾,"2$"则会移动到下一行的行尾,如此类推。"0"命令却不能接受类似这样的计数,命令"^"前加上一个计数也没有任何效果。

一、打开文件、保存、关闭文件(vi命令模式下使用)

vi filename       //打开filename文件

:w       //保存文件

:w vpser.net //保存至vpser.net文件

:q          //退出编辑器,如果文件已修改请使用下面的命令

:q!        //退出编辑器,且不保存

:wq         //退出编辑器,且保存文件

二、插入文本或行(vi命令模式下使用,执行下面命令后将进入插入模式,按ESC键可退出插入模式)

a      //在当前光标位置的右边添加文本

i       //在当前光标位置的左边添加文本

A     //在当前行的末尾位置添加文本

I      //在当前行的开始处添加文本(非空字符的行首)

O     //在当前行的上面新建一行

o     //在当前行的下面新建一行

R    //替换(覆盖)当前光标位置及后面的若干文本

J    //合并光标所在行及下一行为一行(依然在命令模式)

三、移动光标(vi命令模式下使用)

1、使用上下左右方向键

2、命令模式下:h   向左、j   向下 、k   向上、l  向右。

空格键 向右、Backspace  向左、Enter  移动到下一行首、-  移动到上一行首。

四、删除、恢复字符或行(vi命令模式下使用)

x         //删除当前字符

nx         //删除从光标开始的n个字符

dd      //删除当前行

ndd   //向下删除当前行在内的n行

u       //撤销上一步操作

U      //撤销对当前行的所有操作

五、搜索(vi命令模式下使用)

/vpser     //向光标下搜索vpser字符串

?vpser     //向光标上搜索vpser字符串

n           //向下搜索前一个搜素动作

N         //向上搜索前一个搜索动作

六、跳至指定行(vi命令模式下使用)

n+        //向下跳n行

n-         //向上跳n行

nG        //跳到行号为n的行

G           //跳至文件的底部

七、设置行号(vi命令模式下使用)

:set  nu     //显示行号

:set nonu    //取消显示行号

八、复制、粘贴(vi命令模式下使用)

yy    //将当前行复制到缓存区,也可以用 "ayy 复制,"a 为缓冲区,a也可以替换为a到z的任意字母,可以完成多个复制任务。

nyy   //将当前行向下n行复制到缓冲区,也可以用 "anyy 复制,"a 为缓冲区,a也可以替换为a到z的任意字母,可以完成多个复制任务。

yw    //复制从光标开始到词尾的字符。

nyw   //复制从光标开始的n个单词。

y^      //复制从光标到行首的内容。  VPS侦探

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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: