linux系统中vi编辑器如何使用? linux 怎么使用vi编辑器

www.zhiqu.org     时间: 2024-06-01

建议找一下相关的linux教程,在百度知道上几句话说不清楚。

vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强 大不逊色于任何最新的文本编辑器,这里只是简单地介绍一下它的用法和一小部分指令。由于对Unix及Linux系统的任何版本,vi编辑器是完全相同的, 因此您可以在其他任何介绍vi的地方进一步了解它。Vi也是Linux中最基本的文本编辑器,学会它后,您将在Linux的世界里畅行无阻。

1、vi的基本概念

基本上vi可以分为三种状态,分别是

命令模式(command mode)

插入模式(Insert mode)

底行模式(last line mode)

1) 命令行模式command mode)

控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode。

2) 插入模式(Insert mode)

只有在Insert mode下,才可以做文字输入,按[ESC]键可回到命令行模式。

3) 底行模式(last line mode)

将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号……等。

不过一般我们在使用时把vi简化成两个模式,就是将底行模式(last line mode)也算入命令行模式command mode)。

2、vi的基本操作

a) 进入vi

在系统提示符号输入vi及文件名称后,就进入vi全屏幕编辑画面:

$ vi myfile

不过有一点要特别注意,就是您进入vi之后,是处于[命令行模式(command mode)],您要切换到[插入模式(Insert mode)]才能够输入文字。初次使用vi的人都会想先用上下左右键移动光标,结果电脑一直哔哔叫,把自己气个半死,所以进入vi后,先不要乱动,转换到 [插入模式(Insert mode)]再说吧!

b) 切换至插入模式(Insert mode)编辑文件

在[命令行模式(command mode)]下按一下字母i就可以进入[插入模式(Insert mode)],这时候你就可以开始输入文字了。

c) Insert 的切换

您目前处于[插入模式(Insert mode)],您就只能一直输入文字,如果您发现输错了字!想用光标键往回移动,将该字删除,就要先按一下[ESC]键转到[命令行模式(command mode)]再删除文字。

d) 退出vi及保存文件

命令行模式下保存并退出:输入ZZ

在[命令行模式(command mode)]下,按一下[:]冒号键进入[Last line mode],例如:

: w filename (输入 [w filename]将文章以指定的文件名filename保存)

: wq (输入[wq],存盘并退出vi)

: q! (输入q!, 不存盘强制退出vi)

:x (执行保存并退出vi编辑器)

3、命令行模式(command mode)功能键

1). 插入模式

按切换进入插入模式,按“i”进入插入模式后是从光标当前位置开始输入文件;

按[a]进入插入模式后,是从当前光标所在位置的下一个位置开始输入文字;

按[o]进入插入模式后,是插入新的一行,从行首开始输入文字。

2). 从插入模式切换为命令行模式

按[ESC]键。

3). 移动光标

vi可以直接用键盘上的光标来上下左右移动,但正规的vi是用小写英文字母[h]、[j]、[k]、[l],分别控制光标左、下、上、右移一格。

按[ctrl]+[b]:屏幕往“后”移动一页。

按[ctrl]+[f]:屏幕往“前”移动一页。

按[ctrl]+[u]:屏幕往“后”移动半页。

按[ctrl]+[d]:屏幕往“前”移动半页。

按[gg]:移动到文章的首行。(可能只在Vim中有效)

按[G]:移动到文章的最后。

按[$]:移动到光标所在行的“行尾”。

按[^]:移动到光标所在行的“行首”

按[w]:光标跳到下个字的开头

按[e]:光标跳到下个字的字尾

按[b]:光标回到上个字的开头

按[#l]:光标移到该行的第#个位置,如:5l,56l。

Vi还提供了三个关于光标在全屏幕上移动并且文件本身不发生滚动的命令。它们分别是H、M和L命令。

(1)H命令

该命令将光标移至屏幕首行的行首(即左上角),也就是当前屏幕的第一行,而不是整个文件的第一行。利用此命令可以快速将光标移至屏幕顶部。若在H命令之前加上数字n,则将光标移至第n行的行首。值得一提的是,使用命令dH将会删除从光标当前所在行至所显示屏幕首行的全部内容。

(2)M命令

该命令将光标移至屏幕显示文件的中间行的行首。即如果当前屏幕已经充满,则移动到整个屏幕的中间行;如果并未充满,则移动到文本的那些行的中间行。利用此命令可以快速地将光标从屏幕的任意位置移至屏幕显示文件的中间行的行首。例如,在上面屏幕显示的情况下(不论光标在屏幕的何处),在命令模式下,输入命令M之后,光标都将移到add这一行的字母a上。同样值得一提的是,使用命令dM将会删除从光标当前所在行至屏幕显示文件的中间行的全部内容。

(3)L命令

当文件显示内容超过一屏时,该命令将光标移至屏幕上的最底行的行首;当文件显示内容不足一屏时,该命令将光标移至文件的最后一行的行首。可见,利用此命令可以快速准确地将光标移至屏幕底部或文件的最后一行。若在L命令之前加上数字n,则将光标移至从屏幕底部算起第n行的行首。同样值得一提的是,使用命令dL将会删除从光标当前行至屏幕底行的全部内容。

4). 删除文字

[x]:每按一次,删除光标所在位置的“后面”一个字符。

[#x]:例如,[6x]表示删除光标所在位置的“后面”6个字符。

[X]:大写的X,每按一次,删除光标所在位置的“前面”一个字符。

[#X]:例如,[20X]表示删除光标所在位置的“前面”20个字符。

[dd]:删除光标所在行。

[#dd]:从光标所在行开始删除#行

5). 复制

[yw]:将光标所在之处到字尾的字符复制到缓冲区中。

[#yw]:复制#个字到缓冲区

[yy]:复制光标所在行到缓冲区。

[#yy]:例如,[6yy]表示拷贝从光标所在的该行“往下数”6行文字。

[p]:将缓冲区内的字符贴到光标所在位置。注意:所有与“y”有关的复制命令都必须与“p”配合才能完成复制与粘贴功能。

6). 替换

[r]:替换光标所在处的字符。

[R]:替换光标所到之处的字符,直到按下[ESC]键为止。

7). 恢复上一次操作

[u]:如果您误执行一个命令,可以马上按下,回到上一个操作。按多次“u”可以执行多次回复。

8). 更改

[cw]:更改光标所在处的字到字尾处

[c#w]:例如,[c3w]表示更改3个字

9).撤销更改

[u]:撤销上一次更改,可以一直按[u],一直撤销到最旧修改状态。

[ctrl]+[r]:恢复撤销的更改,可以一直按该组合键达到最新的改变。

10). 跳至指定的行

[ctrl]+[g]列出光标所在行的行号。

[#G]:例如,[15G],表示移动光标至文章的第15行行首。

4、Last line mode下命令简介

在使用[last line mode]之前,请记住先按[ESC]键确定您已经处于[command mode]下后,再按[:]冒号即可进入[last line mode]。

A) 列出行号

[set nu]:输入[set nu]后,会在文件中的每一行前面列出行号。

B) 跳到文件中的某一行

[#]:[#]号表示一个数字,在冒号后输入一个数字,再按回车键就会跳到该行了,如输入数字15,再回车,就会跳到文章的第15行。

C) 查找字符

[/关键字]:先按[/]键,再输入您想寻找的字符,如果第一次找的关键字不是您想要的,可以一直按[n]会往后寻找到您要的关键字为止。

[?关键字]:先按[?]键,再输入您想寻找的字符,如果第一次找的关键字不是您想要的,可以一直按[n]会往前寻找到您要的关键字为止。

D) 保存文件

[w]:在冒号输入字母[w]就可以将文件保存起来。

E) 离开vi

[q]:按[q]就是退出,如果无法离开vi,可以在[q]后跟一个[!]强制离开vi。

[wq]:一般建议离开时,搭配[w]一起使用,这样在退出的时候还可以保存文件,可以在后面再跟[!]强制保存退出。

[ZZ]:保存并退出vi。

F) 语法加亮

[syntax on]:vi编辑器默认不打开语法加亮功能,打开vi编辑器后在[last line mode]下使用[syntax on]命令即可打开语法加亮功能,此时编辑器会高亮显示文件中的关键字,方便编程使用,用[syntax off]命令可关闭该功能。



vi myfile.c
a
int main()
esc
:x
于是新建一个文件。还有很多其它的命令,太多了。搜一下vi和vim的快捷键。

在Linux主机安装ssh服务器是为了方便在Windows系统下使用SSHSecure Shell Client客户端软件与Linux主机系统进行文件共享和远程登录。

注意,若使用SSH Secure Shell Client客户端软件登录虚拟机中的Linux系统或共享文件必须配置虚拟机的以太网连接方式为Bridged(桥接)模式,否则客户端将无法连接ssh服务器。

使用如下终端命令可以在Linux主机中安装ssh服务器:

vmuser@Linux-host:~$sudo apt-get install openssh-server

ssh服务器安装成功后,终端显示如下图所示:

其实周立功那边有很多相关的内容,可以去了解一下的。



linux里面的vi编辑器怎么用啊,不会呢?~

vi
XXX(文件名字)就是打开文件
给你说说两个最常用的吧,其他功能很多,也说不完,需要你自己去看帮助文档咯
vi
一般修改文件的时候会用到,但是有时候文件很大怎么办
i是可以修改文件,Esc+:+qw保存并退出,Esc+:+q+!退出文件不做修改
cat
-n
XX
|
grep
"张三"
这样就能将“张三”所在的行数列出来
vi
+166
XX
比如“张三”在166行,这样打开文件光标就直接在166行,就可以修改我需要的内容,比如将“张三”该为“李四”

给点参考吧
还蛮详细的
vi文本编辑器的使用
一.vi的模式
命令模式:vi启动默认进入的模式,可进入输入模"i",或末行模式(:),除了可以完成命令的功能外,也是后两种模式的转换点
输入模式:即文本辑辑状态,最后一行显示"-- INSERT --"提示,按ESC返回到命令模式
末行模式:可完成一些复杂操作,以":"开始,执行完一个末行命令后自动返回命令模式

二.基本使用
1.vi 编辑器的启动与退出:

(1).使用命令"vi"直接进入编辑环境
(2).在命令模式下输入":q!",可以强行退出编辑环境,对文件修改不进行保存
(3).以文件名作为"vi"命令的参数时,若存在此文件,则vi可对内容进行编辑,若不存在,打开以参数名命名的空文件

2.文件操作:

(1).打开新文件:在末行模式下":e filename"关闭当前文件并打开新文件,":e! filename 强制关闭当前文件并打开新文件"
(2).读取文件内容到当前文件:":r filename",读取的文件内容粘贴到当前文件光标所在行的下面
(3)保存文件:命令为":w [filename]",如果文件已经命名,可直接使用":w"命令的参数,如果没有命名,第一次保存时需指定文件名作为参数
(4).另存为文件:命令为":w filename",只保存到新文件,而不更新原来文件的内容
(5).退出vi编辑器:退出格式为":q",保存并退出为":wq",强行退出为":q!"

3.光标的移动操作(命令模式下)

(1).光标方向移动:"h"左、"l"右、"k"上、"j"下
(2).翻页移动:"ctrl+f"前一页、"ctrl+b"后一页、"ctrl+u"前半页、"ctrl+d"后半页
(3).行内快速跳转:"^"本行首字符、"$"本行尾字符、"w"后一单词首字母、"b"前一单词首字母、"e"后一单词尾字母;可添加数字组合使用,例如:"3w"后三个单词首字母、"4b"前4个单词首字母、"5e"后5个单词尾字母
(4).文件内行间跳转:显示行号":set nu",取消显示行号":set nonu","1G"跳转到首行,"G"跳转到末尾行,"#G"跳转到第#行

4.编辑操作

(1).进行输入模式:"i"当前光标处,"a"当前光标后,"A"当前行末,"o"当前行下插入新行,"O"当前行上插入新行,"cw"删除当前光标到所在尾部字符,"c$"删除当前光标到行尾的字符,"c^"删除当前光标(不包括)之前到行首的字符;以上记忆如有困难,可只记"i"从命令模式进入输入模式,完成编辑后"Esc"退回到命令模式
(2).输入模式的操作:上下左右方向进行光标移动,"Home/End"定位光标到行首行尾,"Page Up /Down"上下翻页,"Backspace"左侧字符的删除,"Delete"删除光标位置的字符
(3).删除操作:在命令模式下,可用以下命令完成删除操作,"x"光标处单个字符,"dd"光标所在行,"dw"当前字符到单词尾(含空格),"de"当前字符到单词尾(不含空格),"d$"当前字符到行尾,"d^"当前字符到行首,"J"合并当前行与下一行的内容,可添加数字配合使用,例如"3x"当前光标向右3个字符,"2dd"从当前行开始向下两行文本,"3dw"当前光标向右3个单词,"2de"当前光标向右两个单词(保留一个空格),"5J"合并5行文本
(4).撤销操作:在命令模式下,"u"取消最近一次操作,可重复使用,"U"取消对当前行进行的所有操作,"Ctrl+R"对"u"产生的撤消进行恢复
(5).复制操作:"yy"整行,"yw"光标到单词尾,"y$"光标到行尾,"y^"光标到行首;与数字组合使用,"5yy"当前及后续共5行,"3yw"当前光标开始的3个单词;末行命令":m,ny"m行到n行之间的文本,例如:":100,200y"100行到200的内容
(6).粘贴操作:在命令模式下,使用"p"将缓冲区中的内容粘贴到当前文档

5.查找与替换操作(末行模式)

(1).自上而下:":/word"查找指定的字符串,"n"查找下一个(自上而下)"N"反向查找下一个(自下而上)
(2).自下而上:":?word"自下而上查找指定字符串,"n"查找下一个(自下而上)"N"反向查找下一个(自上而下)
(3).普通替换:":s/old/new"由s开始,"old"指被替换的字符串,"new"替换成哪个字符串,此命令只替换当前行中第一个匹配的字符串
(4).行内全部替换:":s/old/new/g",当前行内所有匹配的字符串
(5).在行区域内进行替换:":#,#s/old/new/g","#,#"表示两个行号之间的行区域,例如"3,5"表示第3行到第5行
(6).整个文件内的替换操作:":%s/old/new/g",加%表示整篇文档,危险,慎用
(7).使用替换确认功能:在原替换命令后加"c"可提供确认功能,例如:":s/old/new/c",":s/old/new/gc",":#,#s/old/new/gc",":%s/old/new/gc";替换命令确认后的提示为"replace with word (y/n/a/q/l/^E/^Y) ?",其中"y"替换,"n"放弃,"a"所有,"q"退出

三、编辑器的多文件操作

1.多文件操作的vi启动:"vi [file1] [file2] .."后跟多个文件名作为参数即可,第一个参数显示在屏幕上,其它文件处于编辑后台状态
2.多文件切换命令:
(1).显示多文件信息:":args"结果中显示打开的文件,"[]"内为当前显示文件
(2).前后切换文件:":next"显示后一文件,":prev"显示前一文件,加"!"为强制切换,不保存当前文件
(3).定位首文件和尾文件:":first"定位首文件,":last"定位尾文件
(4).快速文件切换:已经用某个切换命令进行文件切换后,"Ctrl+^"可快速切换到前状态


#贾娴砍# linux vi -
(15149965645): 进入vi的命令 vi filename :打开或新建文件,并将光标置于第一行首 vi +n filename :打开文件,并将光标置于第n行首 vi + filename :打开文件,并将光标置于最后一行首 vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串...

#贾娴砍# 怎样用VI编辑器
(15149965645): 先进入这个文件的目录下 然后用vi打开 vim assignment.1 然后按i 或o或 a可以编辑 编辑完成ESC退出编辑的模式然后按:进入末行模式 输入wq保存退出

#贾娴砍# linux 中如何用vi编辑器替换相同的字符?
(15149965645): 1)单字符替换:在命令模式下使光标位于要替换的字符,按r,再按需要的字符; 2)取代字符串:在命令模式下 $s/string/replae/g 会将全文的string字符串取代为replace字符串,其中1,$s就是指搜寻区间为文章从头至尾的意思,g则是表示全部取代不必确认. %s/string/replace/c:同样会将全文的string字符串取代为replace字符串,和上面指令不同的地方是,%s和1,$s是相同的功能,c则是表示要替代之前必须再次确认是否取代. 1,20s/string/replace/g:将1至20行间的string替代为relpace字符串.

#贾娴砍# 如何使用Linux上常用的文本编辑器 -
(15149965645): 作者:赵峰教学纲要 more README或是cat README 如果这个文件不长,cat可以把文件复制到标准输出设备上去,在本例中即为窗口. 在Windows中,编辑文件最方便的方式莫过于使用“notepad”,这种最简单的文本编辑器了....

#贾娴砍# linux中如何运行vi 编辑程序
(15149965645): 你的是什么程序如果是shell程序就用sh 文件名

#贾娴砍# 怎么Linux在开始菜单中添加vi编辑器 -
(15149965645): vi是命令行程序 往开始菜单中添加我不知道具体方法,但知道往顶端的面板上添加的方法.如下: 1.确定vi的所在位置. 不同的系统vi的位置有所不同,有的是重定向到vim上.打开终端键入 which vi ,得到vi的绝对路径 2.右击顶端...

#贾娴砍# Linux shell使用vi编辑某个文件时,怎么才能进去编辑状态呢 -
(15149965645): vi被运行时,通常处在命令模式下,键入以下命令 可以使vi退出命令模式,进入输入模式 也就是编辑模式:I(i)、A(a)、O(o)r, 其中,输入”i、o、a“进入的是插入模式,这和在图形界面环境下的编辑器操作类似,只是初始情况下光标的位置有所区别;输入”r“那是替换模式,即替换光标所在的字符.

#贾娴砍# linux里面 vi:编辑器 在哪里 菜鸟求救 -
(15149965645): vi是终端的编辑工具. 打开终端,如果你要创建hello文件,输入vi hello就打开了vi编辑器编辑hello文件.

#贾娴砍# 在Linux系统下,Vi命令模式和编辑模式如何切换? -
(15149965645): 进入vi之后默认是命令模式,按i或者insert以及其他编辑键进入编辑模式 按esc或者crtl+c退出编辑模式.

#贾娴砍# linux中vi编辑软件该怎么使用 -
(15149965645): vi的使用不是一两句能够说得清的,你可以在linux 中man vi可以简单的入门,在日后可以一边使用一边学习,目前我也在学习vim.