最近在使用ubuntu,在linux下,要编辑文件或者其他的文本文件,哪那么一个ubuntu linux下的强大的文本编辑工具就不得不提了,那就是VI编辑器。下面把VI常用到的命令行贴出来。

进入vi的命令 
vi filename :打开或新建文件,并将光标置于第一行首 
vi +n filename :打开文件,并将光标置于第n行首 
vi + filename :打开文件,并将光标置于最后一行首 
vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处 
vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filename 
vi filename….filename :打开多个文件,依次进行编辑

移动光标类命令 
h :光标左移一个字符 
l :光标右移一个字符 
space:光标右移一个字符 
Backspace:光标左移一个字符 
k或Ctrl+p:光标上移一行 
j或Ctrl+n :光标下移一行 
Enter :光标下移一行 
w或W :光标右移一个字至字首 
b或B :光标左移一个字至字首 
e或E :光标右移一个字至字尾 
) :光标移至句尾 
( :光标移至句首 
}:光标移至段落开头 
{:光标移至段落结尾 
nG:光标移至第n行首 
n+:光标下移n行 
n-:光标上移n行 
n:光标移至第n行尾H:光标移至屏幕顶行M:光标移至屏幕中间行L:光标移至屏幕最后行0:(注意是数字零)光标移至当前行首:光标移至第n行尾H:光标移至屏幕顶行M:光标移至屏幕中间行L:光标移至屏幕最后行0:(注意是数字零)光标移至当前行首:光标移至当前行尾

屏幕翻滚类命令 
Ctrl+u:向文件首翻半屏 
Ctrl+d:向文件尾翻半屏 
Ctrl+f:向文件尾翻一屏 
Ctrl+b;向文件首翻一屏 
nz:将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部。

插入文本类命令 
i :在光标前 
I :在当前行首 
a:光标后 
A:在当前行尾 
o:在当前行之下新开一行 
O:在当前行之上新开一行 
r:替换当前字符 
R:替换当前字符及其后的字符,直至按ESC键 
s:从当前光标位置处开始,以输入的文本替代指定数目的字符 
S:删除指定数目的行,并以所输入文本代替之 
ncw或nCW:修改指定数目的字 
nCC:修改指定数目的行

删除命令 
ndw或ndW:删除光标处开始及其后的n-1个字 
do:删至行首 
d$:删至行尾 
ndd:删除当前行及其后n-1行 
x或X:删除一个字符,x删除光标后的,而X删除光标前的 
Ctrl+u:删除输入方式下所输入的文本

搜索及替换命令 
/pattern:从光标开始处向文件尾搜索pattern 
?pattern:从光标开始处向文件首搜索pattern 
n:在同一方向重复上一次搜索命令 
N:在反方向上重复上一次搜索命令 
:s/p1/p2/g:将当前行中所有p1均用p2替代 
:n1,n2s/p1/p2/g:将第n1至n2行中所有p1均用p2替代 
:g/p1/s//p2/g:将文件中所有p1均用p2替换

选项设置 
all:列出所有选项设置情况 
term:设置终端类型 
ignorance:在搜索中忽略大小写 
list:显示制表位(Ctrl+I)和行尾标志($) 
number:显示行号 
report:显示由面向行的命令修改过的数目 
terse:显示简短的警告信息 
warn:在转到别的文件时若没保存当前文件则显示NO write信息 
nomagic:允许在搜索模式中,使用前面不带“\”的特殊字符 
nowrapscan:禁止vi在搜索到达文件两端时,又从另一端开始 
mesg:允许vi显示其他用户用write写到自己终端上的信息

最后行方式命令 
:n1,n2 co n3:将n1行到n2行之间的内容拷贝到第n3行下 
:n1,n2 m n3:将n1行到n2行之间的内容移至到第n3行下 
:n1,n2 d :将n1行到n2行之间的内容删除 
:w :保存当前文件 
:e filename:打开文件filename进行编辑 
:x:保存当前文件并退出 
:q:退出vi 
:q!:不保存文件并退出vi 
:!command:执行shell命令command 
:n1,n2 w!command:将文件中n1行至n2行的内容作为command的输入并执行之,若不指定n1,n2,则表示将整个文件内容作为command的输入 
:r!command:将命令command的输出结果放到当前行

寄存器操作 
“?nyy:将当前行及其下n行的内容保存到寄存器?中,其中?为一个字母,n为一个数字 
“?nyw:将当前行及其下n个字保存到寄存器?中,其中?为一个字母,n为一个数字 
“?nyl:将当前行及其下n个字符保存到寄存器?中,其中?为一个字母,n为一个数字 
“?p:取出寄存器?中的内容并将其放到光标位置处。这里?可以是一个字母,也可以是一个数字 
ndd:将当前行及其下共n行文本删除,并将所删内容放到1号删除寄存器中。

转载于:https://www.cnblogs.com/zjd1396/p/9781743.html

Ubuntu vi命令相关推荐

  1. Ubuntu vi命令键盘错乱问题解决

    刚装好Ubuntu系统,使用 vi 命令发现键盘是错乱的,输入任何值都会换行,我们可以通过安装 vim 命令解决,命令如下: $ sudo apt install vim 安装完成后,再使用 vim ...

  2. Ubuntu使用vi命令时,不能正常编辑文件,使用方向键时老是出现很多字母解决方案

    Ubuntu使用vi命令时,不能正常编辑文件,使用方向键时老是出现很多字母解决方案 参考文章: (1)Ubuntu使用vi命令时,不能正常编辑文件,使用方向键时老是出现很多字母解决方案 (2)http ...

  3. Ubuntu Server 18.04安装后vi命令解决键盘错乱方法和wifi连接之后不能上网

    Ubuntu Server 18.04安装后vi命令解决键盘错乱方法和wifi连接之后不能上网 一.编辑/etc/vim/vimrc.tiny   使用root权限操作 将"compatib ...

  4. 解决Ubuntu中vi命令的编辑模式下不能正常使用方向键和退格键的问题

    在Ubuntu中,进入vi命令的编辑模式,发现按方向键不能移动光标,而是会输出ABCD,以及退格键也不能正常删除字符.这是由于Ubuntu预装的是vim-tiny,而我们需要使用vim-full,解决 ...

  5. Ubuntu常用命令大全[显示桌面]

    Ubuntu常用命令大全 查看软件xxx安装内容 #dpkg -L xxx 查找软件 #apt-cache search 正则表达式 查找文件属于哪个包 #dpkg -S filename apt-f ...

  6. 总结了一下Ubuntu常用命令

    我特意总结了一下Ubuntu常用命令 sudo apt-get install 软件名 安装软件命令 sudo nautilus 打开文件(有root权限) su root 切换到"root ...

  7. ubuntu vi 按方向键出现很多字母是怎么回事?(没安装vim)

    1.使用vi命令时,不能正常编辑文件,使用方向键时老是出现很多字母 这个问题主要是新系统直装了vi,没有装vim.因为vi是不能直接按退格键删除字符的,所以当你使用退格键删除字符,只有在按下esc时, ...

  8. linux vi de ce,linux下vi命令Vi命令集

    linux下vi命令Vi命令集 熟悉VI 是学习UNIX 系统的一个关口 (feming) vi 是visual edit 的缩写 文本编辑器是所有计算机系统中最常用的一种工具.UNIX下的编辑器有e ...

  9. ubuntu, xftp 命令安装 testlink (xampp-linux-x64-5.5.3,Linux Un 5.4.0-39)

    1.使用  sudo passwd -u root 命令  启用root 账户  ,成功后使用sudo passwd root   按提示设置root密码 (后面需要更改权限) uame -a 查看版 ...

最新文章

  1. 2.Python中的reload函数以及not defined reload
  2. 脑机接口:从基础科学到神经康复
  3. Android解决程序切换后台被干掉,恢复状态问题
  4. SharedPreference.Editor的 apply 和commit 方法异同
  5. opencv学习笔记2:图像处理基础
  6. hive中如何进行按周计算
  7. RS100项目进展更新
  8. KubeEdge led部署
  9. 转:Real6410 Linux 常见问题总结(截至2010/07/26)
  10. 从SAP BPC中Entity维设计的理念考虑Web程序中类似文档库之类的设计该考虑的东西...
  11. 基于视频会议系统的应急指挥项目建设方案
  12. zk集群和clickhouse集群搭建
  13. 软件项目管理考试指南—By XJTUSE【YJQ】
  14. 程序员网站运营手册1
  15. 原来Mysql索引要这么设计才能起飞
  16. 37岁的老大叔零基础学python,来点鼓励吧
  17. 基于Java的学生兼职平台设计与实现
  18. iOS 打开本地或下载excel文件
  19. latex 如何在overleaf中插入算法伪代码
  20. 25 个超棒的 Python 脚本合集(迷你项目)

热门文章

  1. Apache+Php+Mysql配置
  2. 【狂神css笔记】美化网页元素
  3. STL的Deque介绍
  4. 用python画风车_用Python画小女孩放风筝的示例
  5. php如何将读取到的mysql内容按发布的日期分割显示_php如何读取文件夹目录里的文件并按照日期,大小,名称排序...
  6. linux 集群服务器设置,Zookeeper集群配置
  7. 第一章节 ASP.NET Web应用程序基础(二)
  8. Python源码深度解析—对象的行为和多态性
  9. [leetcode]5354. 通知所有员工所需的时间
  10. 九大背包问题专题--混合背包问题(状态转移)