`
keepwork
  • 浏览: 332076 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Linux--Vi命令详解

阅读更多
开发者博客:http://www.developsearch.com

启动Vi
vi    不指定文件名,在保存文件时需要指定文件名
vi filename     该文件可以是已存在的文件也可以是新建的
vi +n filename     进入vi,光标停在第n行开始处
vi + filename     进入vi,光标停在文件最后一行开始处
vi +/ 字符串 文件名     进入vi,光标停在第一个字符串处


保存文件和退出
在命令模式下,输入两次<Z>,将保存文件并退出vi
在命令模式下,输入:x,将保存文件并退出vi
:w    保存文件内容
:x 文件名    将当前文件的内容保存由“文件名”指定的文件中,若文件存在则产生错误,不退出vi
:w! 文件名    将当前文件的内容保存由“文件名”指定的文件中,若文件存在则覆盖原有文件
:q    退出vi,若文件有改动未保存,则产生错误,不退出vi
:q!    强行退出vi,若有修改未保存,则不保存
:wq    退出并保存文件
:wq!    强行保存退出
:set nu/:set number    显示行号
:set nonu/:set nonumber    取消行号的显示


光标移动
方向键下    移动到下一行,列不变
方向键上    移动到上一行,列不变
方向键左    移动到前一列,行不变
方向键右    移动到后一列,行不变
0    移动到当前行的行首
$    移动到当前行的行尾
nw    右移n个字,n为数字,光标处于第n个字的字首,w上forword中的w
w    右移一个字,光标处于下一个字的字首
nb    左移n个字,n为数字,光标处于第n个字的字首,b上back中的w
b    左移一个字,光标处于下一个字的字首
(    移动到本句的句首,若已经处于本句的句首,则移动前一句的句首
)     移动到下一句的句首
{    移动到本段的段首,若已经处于本段的段首,则移动前一段的段首
}    移动到下一段的段首
1G    移动到文件首行的句首
G    移动到文件末行的行首
nG    移动到文件第n行的行首
<ctrl>+g    报告光标所处的位置,位置信息显示在vi的最后一行
遇到"."、"?"或"!",vi认为是一句的结束,vi以空白行来作为段的开始和结束


文本的删除
x    删除光标所在的位置的一个字符
nx    删除光标开始的n个字符
dw    删除光标所在位置的一个字,d是delete的首字母
ndw    删除光标开始的n个字
db   删除光标前的一个字
ndb    删除光标前的n个字
d0    删除光标到行首所有字符
d$    删除光标到行尾所有字符
dd    删除当前行
ndd    删除当前行开始的n行
d(    删除光标到句首所有字符
d)    删除光标到句尾所有字符
d{    删除光标到段首所有字符
d}    删除光标到段尾所有字符
若要取消前一次操作,可以按u,u是undo的首字母


文本查找和替换
?string<Enter>    在命令模式与输入?和要查找的字符串"string"并回车即可
n    向文件头方向重复前一个查找命令
N     向文件尾方向重复前一个查找命令
:s/oldstr/newstr    在当前行用newstr替换oldstr,只替换一次,s是substitue的首字母
:s/oldstr/newstr/g    在当前行用newstr替换所有的oldstr
:1,10s/oldstr/newstr/g    在1-10行用newstr替换所有的oldstr
:1,$s/oldstr/newstr/g     在整个文件中用newstr替换所有的oldstr


文本的复制和粘贴
yw    将光标所在位置到字尾的字符复制到缓冲区中,y是yank的首字母
nyw    将光标所在位置到n个字尾的字符复制到缓冲区中,y是yank的首字母
yb    从光标开始向左复制一个字
nyb    从光标开始向左复制n个字
y0    从光标开始复制到行首
y$    从光标开始复制到行尾
yy    复制当前行
nyy    复制当前行开始n行
p    在光标所在位置后粘贴复的内容
P    在光标所在位置前粘贴复的内容
np    在光标所在位置后粘贴复的内容,粘贴n次
nP    在光标所在位置前粘贴复的内容,粘贴n次
分享到:
评论

相关推荐

    Linux之VI命令详解

    Linux之VI命令详解 Linux系统中的VI编辑器是一种功能强大的文本编辑器,它提供了一个视窗设备,通过它可以编辑文件。vi编辑器是所有UNIX系统都会提供的屏幕编辑器,对UNIX系统略有所知的人或多或少都觉得vi超级难用...

    linuxvi命令详解-屏幕文本编辑器Vi.pdf

    linuxvi命令详解-屏幕文本编辑器Vi.pdf

    linux-vi命令

    ### Linux下的Vi编辑器详解 #### 一、Vi编辑器基本概念 Vi是Unix系统以及类Unix系统(如Linux)中最常用的文本编辑器之一。它最初由Bill Joy编写,并因此得名“vi”(Visual Editor)。Vi编辑器具有强大的文本编辑...

    linuxvi命令详解-屏幕文本编辑器Vi整理.pdf

    linuxvi命令详解-屏幕文本编辑器Vi整理.pdf

    linuxvi命令详解-屏幕文本编辑器Vi[汇编].pdf

    linuxvi命令详解-屏幕文本编辑器Vi[汇编].pdf

    linux_vi命令详解-屏幕文本编辑器Vi

    ### Linux VI命令详解:屏幕文本编辑器Vi #### 引言 在Linux系统中,文本编辑器是不可或缺的工具,广泛应用于文件创建、文本编辑、编程等场景。其中,Vi编辑器作为全屏幕编辑器的代表,自诞生以来便深受用户喜爱。...

    详解linux vi命令用法

    详解 Linux Vi 命令用法 Vi 编辑器是 Linux 系统中最基本的编辑器,它提供了一个视窗设备,通过它可以编辑文件。Vi 编辑器可以分为三种操作状态:命令模式(Command mode)、插入模式(Insert mode)和底线命令模式...

    linux vi 命令 详解

    ### Linux VI命令详解 在Linux系统中,VI编辑器(Visual Editor)是文本编辑的基石,对于系统管理员、程序员及所有Linux用户来说至关重要。本文将深入解析VI编辑器的使用方法,包括其基本操作、模式切换、搜索与...

    Linux下Vi命令详解.pdf

    Linux下Vi命令详解的知识点涵盖了文本编辑器Vi/Vim的使用方法和技巧。Vi是一个功能强大的文本编辑器,在Linux系统中广泛应用,具备高效的编辑能力。Vim是Vi的增强版,提供了更多的功能和扩展性。 首先,Vi有三种...

    kibana-7.9.3-linux-x86_64.rar

    《Kibana 7.9.3在Linux平台上的安装与使用详解》 Kibana是Elastic Stack的重要组成部分,它是一款数据可视化工具,能够帮助用户以图表、仪表板的形式直观地理解存储在Elasticsearch中的数据。在这个文档中,我们将...

    linux-vi使用手册

    ### Linux-Vi使用手册知识点详解 #### 一、vi编辑器简介 vi(visual editor)是一种功能强大的全屏幕文本编辑器,在大多数Unix系统以及Linux发行版中都可以找到它。vi编辑器具有两种基本操作模式:命令模式和输入...

    linux_vi 命令

    ### Linux Vi 命令详解 #### 一、Vi 编辑器基本概念 Vi(Visual editor)是一种广泛应用于Linux及Unix系统中的文本编辑器。它最初由Bill Joy开发,并随同BSD Unix一起发布,逐渐成为了许多用户进行文本编辑的标准...

    详解Linux中vi命令大全

    ### Linux中的vi编辑器命令详解 #### vi编辑器概述 vi编辑器作为Unix及Linux系统下的标准文本编辑工具,其功能强大且应用广泛。对于熟悉其操作方式的用户而言,vi不仅能提供高效的文本编辑体验,还能帮助用户在复杂...

    大数据基础-Linux基础详解课程25.vi编辑命令-替换搜索取消命令.mp4

    大数据基础-Linux基础详解课程

    ARM-linux-gcc安装

    ### ARM-linux-gcc安装知识点详解 #### 一、概述 ARM-linux-gcc是一款用于ARM架构下的Linux系统的交叉编译器工具链。交叉编译是指在一个平台上编译代码,然后将生成的目标代码运行在另一个不同的平台上。对于...

    The-Method-to-Use-VI.rar_vi

    **VI编辑器详解** VI(Visual Editor)是Linux操作系统中的一种强大的文本编辑器,它具有丰富的功能和高度可定制性,对于系统管理员和程序员来说,掌握VI编辑器的使用至关重要。"The-Method-to-Use-VI.rar_vi"这个...

Global site tag (gtag.js) - Google Analytics