微软官方MSDN原版Win10系统下载

现在位置: 首页  > 系统教程  > 系统帮助

vi如何使用方法

时间:2024-09-20 21:09:28   

大家好,今天Win10系统之家小编给大家分享「vi如何使用方法」的知识,如果能碰巧解决你现在面临的问题,记得收藏本站或分享给你的好友们哟~,现在开始吧!

生意如何小账本专业版-小商户销售和存货记账系列软件最新版本下载

1.linux系统中vi编辑器如何使用?


  建议找一下相关的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]命令可关闭该功能。

2.linux vi命令的使用方法


  一般模式常用操作
【h(或向左方向键)】 光标左移一个字符
【j(或向下方向键)】 光标下移一个字符
【k(或向上方向键)】 光标上移一个字符
【l(或向右方向键)】 光标右移一个字符
【[Ctrl] + f】 屏幕向下移动一页(相当于Page Down键)
【[Ctrl] + b】 屏幕向上移动一页(相当于Page Up键)
【[0]或[Home]】 光标移动到当前行的最前面
【[$]或[End]】 光标移动到当前行的末尾
【G】 光标移动到文件的最后一行(第一个字符处)
【nG】 n为数字(下同),移动到当前文件中第n行
【gg】 移动到文件的第一行,相当于"1G"
【n[Enter]】 光标向下移动n行
【延展阅读】
(一)vi/vim是什么?
Linux世界几乎所有的配置文件都是以纯文本形式存在的,而在所有的Linux发行版系统上都有vi编辑器,因此利用简单的文字编辑软件就能够轻松地修改系统的各种配置了,非常方便。vi就是一种功能强大的文本编辑器,而vim则是高级版的vi,不但可以用不同颜色显示文字内容,还能进行诸如shell脚本、C语言程序编辑等功能,可以作为程序编辑器。
(二)为什么要学习vi/vim?
首先所有的Linux发行版系统上都会默认内置vi编辑器,而不一定带有其他文本编辑器,非常通用;其次,很多软件的编辑接口都会默认调用vi;第三,vi具有程序编辑的能力;最后,vi程序简单,编辑速度相当快速。
(三)vim配置文件
vim的配置文件为/etc/vimrc,但一般不建议直接修改这个文件,而是在用户根目录下创建一个新的隐藏文件:
vim ~/.vimrc
然后编辑这个文件,常用的配置如下:
bash
"双引号后面的内容为注释
set nu "显示行号
set hlsearch "查找的字符串反白显示
set backspace=2 "可随时用退格键进行删除
set autoindent "自动缩排
set ruler "在最下方一行显示状态
set showmode "在左下角显示模式
set bg=dark "显示不同的底色,还可以为light
syntax on "语法检验,颜色显示
参考资料
$Linux vi/vim编辑器常用命令与用法总结.键盘上的手艺人[引用时间2018-3-7]

3.怎样使用vi?


  你要在什么系统下使用VI 都要区分好的 
学习 vi —— “学习清单”式
1、62616964757a686964616fe4b893e5b19e31333234303132起点
介绍
这篇指南要向你介绍 vi ——一个强大的可视化编辑器——的使用方法。通过一种特殊的循序渐进的“作弊纸”模式,这篇指南让你在短时间内迅速成为 vi 高手。在这篇指南里面,你将学到如何浏览、编辑文字、使用“插入”模式、复制粘贴以及使用一些重要的 vi 插件(譬如:可视化插件)和多窗口编辑。
如果你不知道,或者对 vi 感到不爽,那么赶快利用这篇指南,让这个 Linux/UNIX 平台最流行、最强大的可视化浏览器为你的工作添油加速吧!
关于这篇指南
学习 vi 的最大难点在于——vi 的繁多的指令。为了有效利用 vi,你需要记住其中不少的一些。这可能需要不少时间;而偏偏这篇指南的目的之一就是在于利用尽可能少的时间。所以,从一开始,我们将面对一个挑战——我怎么帮助你在短期内记住大量的命令。
为了在这篇指南的过程中解决这个难题,我们会逐渐一点一点积累起一张关于 vi 的知识清单。这张清单会包含所有重要的 vi 命令。当你完成了这份指南,当你忘记某个 vi 命令的时候,你可以很轻松得从这份清单中查找特定的命令。逐渐地,随着你记住这些命令,你会越来越少依赖这份清单。通过使用“知识清单”技术,你可以前所未有的速度学会使用 vi !
学习过程
在这份指南中,我会使用一些帮助你学习的办法。首先,如同你所期待的,我会介绍一条命令是如何工作的。然后,我会请你在 vi 中练习使用这条命令,之后把这条命令记录在知识清单中,以备日后参考。一一执行这些步骤对于你快速学习 vi 有莫大的帮助。试验并且记录这些命令会帮助你记住它们。
介绍 vim
Vi 有很多不同版本,而我要向你介绍的是一个叫做 vim 的版本。vim 非常流行;它有相当多的扩展模块使得 vi 更棒(当我展示一个 vim 独有的命令的时候,我会特别指出)。如果你需要安装 vim,你可以从 www.vim.org 得到它。除了一个增强版本的命令行 vi,vim 还有一个叫做 gvim 的、漂亮的、基于 GTK+ 的 GUI 版本。下面是一张我系统中 gvim 的截图:
插图 1.1:VIM 截图
[img]http://www.ibiblio.org/web-gentoo/images/vishot.png[/img]
如果你是一个 vim 新手,试着在你的系统上运行 gvim。从 GUI 使用可以让新手觉得轻松一点。
2、第一步
打开一个文件
在使用 vi 编辑文件之前,你需要知道如何使用 vi 浏览一个文件。vi 有很多移动命令,而我们会接触它们中的不少。在指南的这部分中,找一个无关紧要的文本文件,然后用 vi 打开它:
代码 2.1: 用 vi 装入一个文件
[code]$ vi myfile.txt [/code]
如果你安装了 vim,输入 vim myfile.txt。如果你决定使用 gvim,输入 gvim myfile.txt。myfile.txt 是你系统中的一个文件名。
在 vi 中
启动 vi 之后,你应该看到文件的一部分显示在你的显示屏上。恭喜——你进入了 vi!不像其它很多编辑器,当 vi 启动的时候会进入一个特别的“命令模式”。这意味着如果你键盘上的 1,vi 不会在当前光标位置输入一个 1,而会将光标向右移动一位。在命令模式,从键盘输入的字符会作为命令传递给 vi,而不是向文件中插入文字。移动命令是所有命令中最基本的一类,让我们来看一看。
3、来回移动
在 vi 中移动,第一部分
在命令模式中,你可以用 h、j、k 和 l 键将光标分别向左、下、上和右侧移动。如果你使用的是一个现代版本的 vi,你也可以用方向键达到相同的目的。h、j、k 和 l 键很有用:当你习惯了它们的时候,你可以不必将你的手从键盘基本键位移开就可以在文件中移动。试着使用 h、j、k 和 l 键(以及方向键)在文件中移动光标。试着用 h 移动到行首。注意 vi 不允许你用 h 键从行首自动退回到上一行。相似的,你不能用 l 从行末自动转到下一行。
在 vi 中移动,第二部分
vi 为跳至行首、尾提供了特殊的快捷键。你可以按0(零)跳到行首,$ 跳到行末。试试看。因为 vi 有这么多的移动命令,我们可以把它作为一个好的“分页”程序(就像 more 或者 less 命令)。把 vi 作为一个分页程序也可以帮助你飞快地学习这些移动命令。
你也可以用 <CTR>F 和 <CTR>B 向前后一次移动一整页。新的一些版本(譬如 vim)也支持用 PGUP 和 PGDOWN 键达到相同的目的。
按单词移动,第一部分
vi 也允许你按照单词长度来左右移动。要移动到下一个单词的第一个字母,按 w 键。到下一个单词的最后一个字母,按 e 键。移动到前一个单词的第一个字母,按 b 键。试试。
按单词移动,第二部分
试过这些移动命令之后,你可能注意到,vi 把 foo-bar-oni 这样的单词作为五个单独的单词!这是因为 vi 默认以空格或者标点符号作为单词分界,是以 foo-bar-oni 备分解成五个单词:foo、-、bar、- 和 oni。
有的时候这是你所期望的,有时候不是。幸运的是,vi 能够理解“长单词”的概念。vi 仅仅以空格或换行作为长单词的分界。这意味着虽然 foo-bar-oni 会被当作五个 vi 单词,它也可以作为一个长单词处理。
按单词移动,第三部分
你可以使用大写的单词移动命令在长单词之间跳跃移动。W 跳到下一个长单词的第一个字母,E 跳到最后一个字母,B 移动到前一个单词的第一个字母。试试看,和普通单词范围的移动进行比较,直到你明白它们的区别。
更大范围的移动
在我们把所学过的东西归纳到清单里面之前还有几个命令要看看。你可以用 ( 和 ) 移动到前后两句的开始。此外,用 { 或 } 可以跳到当前或者下一个段落的开头。试试它们。
4、退出
我们已经说了基本的移动命令,但是还有一些命令是你需要知道的。输入 :q 可以退出 vi。如果这样不能退出,可能是因为你修改过这个文件。要让 vi 退出而不保存修改,输入 :q!。这样你应该退出到了命令提示符。
在 vi 中,以 : 开头的命令被称为 ex-模式命令。这是因为 vi 内置了一个叫做 ex 的非可视化的编辑器。我们可以像使用 sed 一样地使用 ex 进行按行编辑文本。不仅如此,它也可以用来退出 vi,就像我们刚刚看见的。当你在命令模式按下 Q 键,就可以进入 ex 模式。这时,你会看见一个提示符 :;如果你按下回车键,整个屏幕会向上滚动。要回到熟悉的 vi 模式,只要输入 vi 然后回车就可以了。
5、知识清单
清单的开头
我们已经提到了很多命令;现在到了把它们加入清单的时候了。你可以用一张 A4 或者 US 信纸来制作这份清单,因为我们会在里面写很多内容!这是一份我的清单,里面包含了上面提到的所有命令。尽可能参考我的格式,这样我们可以把所有东西都集中在一张纸上。
插图 5.1:知识清单
[img]http://www.ibiblio.org/web-gentoo/images/vicheat-first.png[/img]
繁复的 vi (Miscellaneous vi)
让我们继续我们快速的命令行学习过程。在命令模式你可以用 G 跳至特定行。要跳到文件的第一行,输入 1G。注意 G 是大写字母。
如果你要搜索某个特定字符串模式在文件中的位置,输入 /<regexp> 然后回车。用一个正则表达式来替换你要搜索的模式。如果你不会使用正则表达式,不用烦恼——直接输入 /foo 会移动到下一个 foo 出现的地方。唯一需要注意的是,如果你需要寻找字面上的 ^、.、$ 或者 \,你需要在它们之前加上一个反斜线(\)。譬如,/foo\.gif 会寻找“foo.gif”的下一个出现位置。
要继续向下寻找,按 n。要继续向上寻找,输入 N。还是一样,用你自己的 vi 编辑器试验这些命令。你也可以用 // 来重复上一次的搜索。
6、保存和编辑
“保存”和“另存为...”
我们提到过,你可以用 ex 命令 :q 退出 vi。如果你要保存你做的改变,输入 :w。如果你要保存你的更改后的文本到另外一个文件,输入 :w filename.txt 会把文本保存为 filename.txt。如果你想保存后退出,输入 :x 或者 :wq。 
在 vim (以及其它一些高级的编辑器,例如 elvis):w,你可以同时打开几个缓存。要在一个新窗口中打开文件,输入 :sp filename.txt。filename.txt 会在一个分割开的新窗口中打开以供编辑。要在窗口之间切换,输入 <CTR>w<CTR>w(按两次 control-w)。:q、:q!、:w 和 :x 中的任一个都只作用于当前活动的窗口。 
简单的编辑
现在是我们学习一些简单编辑命令的时候了。我们将要提到的命令被称为“简单”是因为这些命令只需要你呆在命令模式。更复杂的编辑命令会让你自动进入插入模式——一个允许你从键盘输入文本的模式。我们会在一会儿提到这些内容。
现在,试着移过一些字符然后反复按 x 键。你会看见 x 会删除当前光标位置的字符。现在移动到你打开的文件的一个段落中间的某处然后点 J(大写)。你会发现 J 命令让 vi 把下一行接在这一行的结尾。现在,把光标移过一段文字然后点 r,再输入一个新的字母,你会看见原来的内容被替换了。最后,移动到文件的任一位置然后输入 dd。你会发现 dd 会删除当前一行文字。
替换和删除
你可以点 . 来重复任何一个编辑命令。如果你试试,你会看见 dd... 会删除四行文字,而 J...... 会连接四行(译者注:搞不懂ing,哪位大侠解释一下为什么不是六行)。和往常一样,vi 提供了非常顺手的快捷方式。
要删除文本,你可以用 d 命令结合任何的移动命令。例如,dw 会删除从当前光标位置到下一个单词开始处的内容;d) 会删除到下一个句子结束的地方;d} 会删除这个段落的剩余内容。试着用 d 命令和其它编辑命令直到你熟悉了它们。
撤销!
我们正在试验删除命令,而这正是一个学习撤销改变的好时候。按 u 键,传统的 vi 会仅仅允许你撤销最后一次操作。然而,新版本的 vi 譬如 vim 允许你用重复的 u 命令撤销你对文件作出的更改。把 d 和 u 命令一起试试。
升级你的知识清单
到了更新你的知识清单的时候了!添加上我们刚刚说过的那些命令,你的知识清单应该看起来是这个样子:
插图 6.1:加入了编辑命令的知识清单
[img]http://www.ibiblio.org/web-gentoo/images/vicheat-edit.png[/img]
7、插入模式
到目前为止,我们知道了如何在 vi 中移动光标,进行读写文件,还有一些基本的编辑操作。但是,我还没有向你们展示如何输入自由格式文本!这是我故意的,因为 vi 的插入模式在开始的时候会显得有些复杂。不过,一旦你熟悉了插入模式,它的复杂度(以及可用性)会成为非常有用的东西。
在 vi 的插入模式,你将可以直接将文字输入到屏幕,就像其它很多可视化编辑器一样。当你完成了你输入的内容,可以用 Esc 键退回到命令模式。i 或 a 可以让你进入插入模式。如果按 i,你的文本会插入在当前字符之前;而 a 会让你的文本插入在当前字符之后。记住,完成输入之后,用 Esc 键回到命令模式。
插入模式的优点
去试试 a 和 i 命令。按其中任意一个,输入一些文字,然后按退出键回到命令模式。按 a 或 i 之后试着按回车键看看会发生什么。试着用方向键和 Del 键感觉一下插入模式怎么工作。利用方向键和 Del 键,你可以不必退出到命令模式而完成相当多的编辑工作。
插入选项
这里有其它一些方便的进入插入模式的方法。按 A(大写)从当前一行的末尾开始插入内容而不管你当前的位置。相似的,I(大写)让你在当前行的开始插入。按 o 会在当前一行的下方新建一个空行以供插入,而 O 会在上方建立新行。要用新的空白行替代当前整行文字,输入 cc。要替代从当前位置到当前行的结束,输入 c$。要替换从当前位置到行的开始,输入 c0。
除了上述提到的功能,上面的所有命令都会让你进入 vi 的插入模式。输入完成之后,按 Esc 键回到命令模式。
改变文本
我们在前面尝试过 c 修改命令,例如 cc、c0 和 c$。cc 是修改命令的一个特殊形式,类似 dd。c0 和 c$ 命令是组合使用修改命令和移动命令的示例。从这个角度来看,c 和 d 的工作方式相似,除了一点:它让你停留在插入模式。这样,你可以输入用来替代删除部分的文本。试着把一些移动命令和 c 结合起来在你的文件中试试看(例如:cW、ce、c( )。
8、复合命令
当你开始使用复合(“combo”)命令(类似 d{ 和 cw 之类)的时候,vi 才真正显示它的强大。不仅是这些命令,我们还可以用一个数字与移动命令组合,例如 3w 会让 vi 向右侧跳过三个单词。12b、4j 是其它一些数字和移动命令形成的组合命令。
vi,除了支持(数字)(移动命令)组合之外,还允许 d 和 c 与一个数字或者移动命令组合。d3w 会删除下面三个单词,d2j 会删除当前和下面两行,等等。试试这些 c 和 d 的组合命令,看看 vi 能让你的文本编辑变得如何简单轻松。当这些命令变得顺手的时候,你将可以以一种难以置信的速度编辑文件。
更新知识清单
又到了更新知识清单的时间。它现在看起来应该是这个样子:
插图 8.1:加入了复合命令的知识清单
[img]http://www.ibiblio.org/web-gentoo/images/vicheat-compound.png[/img]
提高生产力的特色
到目前为止,我们已经学会了移动光标、保存和退出、进行简单的编辑和删除操作,以及使用插入模式。利用知识清单上面的内容,你几乎可以用 vi 完成所有的任务。
不过,vi 还有许多更强大的命令。在这个章节中,你将学会如何剪切、复制和粘贴,搜索和替换,以及使用“自动缩进”等特点。这些命令让 vi 变得更有趣而有用。
可视化模式
使用剪贴的最方便的办法是使用可视化模式,一个加入现代版本 vi(譬如 vim 和 elvis)的特殊模式。你可以把可视化模式想象成“高亮文本”模式。当文本被反白,我们可以复制或者删除它,然后粘贴。如果你在使用 gvim,你可以轻松地按住鼠标左键拖动来达到反白一段文字的效果:
插图 8.2:VIM 与反白文本
[img]http://www.ibiblio.org/web-gentoo/images/vihighlight.png[/img]
除此之外,你也可以通过按 v (如果你通过控制台调用 vi,这可能是你唯一的选择)。然后,用移动命令(尤其是方向键)控制光标,你可以反白一段文字。反白之后,我们就可以复制或者剪切这段文字了。
如果要复制这段文字,按 y(表示“yank”,猛拉)。要剪切,点 d。你会就此回到命令模式。现在,移动到你想要粘贴刚刚复制/剪切的内容的地方,然后按 P 在光标后插入内容,或者 p 将内容插入在光标之前。瞧,剪贴复制,就是这么轻松!在进入下面一小节内容之前,多试试剪切复制粘贴操作。
替换文本
我们用 ex 模式进行文本替换。如果你要替换当前行出现的第一个匹配模式,输入 :s/<regexp>/<replacement>/ 然后按回车。这里 <regexp> 是你要匹配的模式,而 <replacement> 是你用来替换的字符串。要替换当前行的所有匹配处,输入 :s/<regexp>/<replacement>/g 然后回车。要替换文件中所有匹配位置(这通常是你需要的),输入 :%s/<regexp>/<replacement>/g。如果你希望在全局替换过程中,vi 在每次替换之前进行提示,输入 :%s/<regexp>/<replacement>/gc (c 表示 confirm 确认)然后回车。
缩排
vi 支持自动缩排;当你编辑程序源码的时候可能需要这个功能。多数现代版本的 vi(例如 vim)会在你打开一个源码文件(例如 .c 文件)自动启用自动缩排功能。当自动缩排启动之后,你可以用 <CTR>d(control-d)向左移动一个缩排级别,或者 <CTR>t(control-t)向右移动一个缩排级别。如果自动缩排模式没有自动启用,你可以用 ex 模式命令 :set autoindent 来启动它。你还可以用 :set tabstop 命令告诉 vi 你习惯的 tab 宽度;:set tabstop=4 是一个相当流行的设置。
我们的最终版知识清单
Well,我们完成了我们的 vi 指南!加入了所有的高级编辑功能之后,这份清单应该看着像这个样子:
插图 8.3:最终版知识清单
[img]http://www.ibiblio.org/web-gentoo/images/vicheat-final.png[/img]
把这份清单放在手边,然后开始用 vi 编辑文档、写 email。当你需要的时候参考这份清单;你会发现在这一周之内,你会记住几乎所有这些命令,而 vi 的生产力会让你飞翔天际!
如果你像把 vi 作为你的默认编辑器,修改你的 /etc/rc.conf
代码片断 8.1:设置 vi 成默认编辑器
(设置 EDITOR 为你选择的编辑器。)
#EDITOR="/bin/nano"
EDITOR="/usr/bin/vim"
#EDITOR="/usr/bin/emacs"
参考资料
这里有一些你可能认为有助于继续学习 vi 的资料:
·vi 主页,关于 vi 的一切的好地方
·vim 主页是你寻找 vim 相关信息的地方
·如果你在找一本好的过时的书,《Learning the vi Editor, 6th Edition》会是一个不错的选择,覆盖了不少 vi 和 vi 变种的信息。
关于这份文档
这份原始文档作为 Westtech Information Services 的所有,最初发表在 IBM developerWorks。这一份是更新过的文档,包含了很多 Gentoo Linux 文档团队的改进。

4.平水韵部如何使用


  《平水韵》的使用方法其实很简单。
先说声调。今音分一、二、三、四四声,古音分平、上、去、入四声,平水韵106部实际就分属于平、上、去、入四个类别之下。格律诗讲究平仄,如使用《平水韵》指导格律诗声调,则其中“平”即为平声,“上、去、入”即为仄声。
声调的问题解决了,下面来说韵的问题。在今音中,什么样的字可以放在一起押韵,你一定很清楚了,粗浅地说,比如“楼、洲、头”这类字,因为都以韵母(ou)结尾,所以读起来顺口,是可以一起押韵的字,这么来讲你理解起来应该没有困难。那么在古代,这个道理也是同样,《平水韵》的106个韵部,正是按照字的古音来归纳的,比如“上平一东”中的所有字,在古代均为同一个韵母;“上平二冬”中的所有字,在古代均为同一个韵母;“上平三江”中的所有字,在古代均为同一个韵母……依此类推。而相应地,不同韵部中的字,在古代就不是同一韵母,尽管也许在今天,由于语音的演变,它们的韵母部分读音趋于相同了。比如“上平一东”和“上平二冬”就是非常典型的例子,在今天这两个韵部中的字韵母基本都是“ong”,读起来没什么差别,但在古代格律诗中是决不允许通押的。说到这里,为了使你的理解更清晰,我还想反过来再举一个例子,由于语音的演变,在古代韵母相同、属于同一韵部的字,在今天也有可能出现分化,不再押韵,比如“上平五微”中的所有字,把它们用汉语拼音注明今音,会发现它们的韵母部分很明显分成了读“i”和读“ei”两类,在今天“i”和“ei”是不能通押的,读起来很不顺口,但是在古代这些字有着相同的韵母,并未分化,是同一韵部的字。
总之《平水韵》是一部很简单的韵书,你只需知道同一韵部下的所有字音调相同、韵母部分相同便可以了,按照这一标准,把所有汉字分成了106类。如果你还有什么不明了之处,可以追问。

5.linux命令vi文本编辑器的使用方法


  vi的基本概念
 基本上vi可分为三种操作状态,分别是命令模式(command mode)、插入模式(insert mode)和底线命令模式(last line mode),
 各模式的功能区分如下:
 1. comand mode:控制屏幕光标的移动,字符或光标的删除,移动复制某区段及进入insert mode下,或者到last line mode。
 2. insert mode:唯有在insert mode下,才可做文字数据输入,按esc等可回到comand mode。
 3. last line mode:将储存文件或离开编辑器,也可设置编辑环境,如寻找字符串、列出行号等。
 不过可以把vi简化成两个模式,即是将last line mode也算入command mode,把vi分成command 和insert mode。
 vi的基本操作
 ?进入vi
 在系统提示符号输入vi及文件名称后,即可进入vi全屏幕编辑画面:
 $ vi testfile
 有一点要特别注意,就是您进入vi之后是处于“command mode”下,您要切换到insert mode才能输入文字。
 初次用vi的用户都会想先用上下左右键移动光标,结果电脑一直叫,把自己气个半死,所以进入vi后,先不要乱动,
 转换入insert后再说。?切换至insert mode编辑文件在command mode下按‘i’、‘a’或‘o’三键就可进入insert mode。
 这时候您就可以开始输入文字了。
 i: 插入,从目前光标所在之处插入所输入的文字。
 a: 增加,目前光标所在的下一个字开始输入文字。
 o: 插入新的一行,从行首开始输入文字。
 ?insert的切换→command mode,按esc键
 您目前处于insert mode,您就只能一直打字。假如您发现打错字了,想用光标键往回移动,将该字删除,
 就要按esc键转换回command mode,再删除文字。
 ?离开vi及存文件
 在command mode下,可按冒号“:”键入入last line mode,例如:
 :w filename (输入“w filename”,将文章存入指定的文件名filename)
 :wq (输入“wq”,因为进入之时已经指定文件名testfile,所以会写入testfile并离开vi)
 :q! (输入“q!”,强制离开并放弃编辑的文件)
 command mode功能键列表
 在介绍command mode指令的时后,指令后面加上“常用”字眼的功能键,表示比较常用的vi指令,
 请读者您一定要学会、记住。
 (1)i、a、o切换进入insert mode。[超级常用]
 (2)移动光标
 vi可以直接用键盘上的光标键来上下左右移动,但正规的vi是用小写英文字母
 h、j、k、l,分别控制光标左、下、上、右移一格。
 按ctrl+b:屏幕往后移动一页。[常用]
 按ctrl+f:屏幕往前移动一页。[常用]
 按ctrl+u:屏幕往后移动半页。
 按ctrl+d:屏幕往前移动半页。
 按 0 (数字零):移动文章的开头。[常用]
 按 g:移动到文章的最后。[常用]
 按 w:光标跳到下个word的开头。[常用]
 按 e:光标跳到下个word的字尾。
 按 b:光标回到上个word的开头。
 按 $:移到光标所在行的行尾。[常用]
 按 ^:移到该行第一个非空白的字符。
 按 0:移到该行的开头位置。[常用]
 按 #:移到该行的第#个位置,例:51、121。[常用]
 (3)删除文字
 x:每按一次删除光标所在位置的后面一个字符。[超常用]
 #x:例如,6x 表删除光标所在位置的后面6个字符。[常用]
 x:大字的x,每按一次删除光标所在位置的前面一个字符。
 #x:例如,20x 表删除光标所在位置的前面20个字符。
 dd:删除光标所在行。[超常用]
 #dd:例如,6dd表删除从光标所在的该行往下数6行之文字。[常用]
 (4)复制
 yw:将光标所在处到字尾的字符复制到缓冲区中。
 (想在和#x、#x的功能相反)
 p:将缓冲区内的字符粘贴到光标所在位置(指令‘yw’与‘p必须搭配使用)。
 yy:复制光标所在行。[超常用]
 p:复制单行到您想粘贴之处。(指令‘yy’与‘p’必须搭配使用)
 #yy:如:6yy表示拷贝从光标所在的该行往下数6行之文字。[常用]
 p:复制多行到您想粘贴之处。(指令‘#yy’与‘p’必须搭配使用)
 “ayy:将复制行放入buffer a, vi提供buffer功能,可将常用的数据存在buffer
 “ap:将放在buffer a的数据粘贴。
 “b3yy:将三行数据存入buffer b。
 “b3p:将存在buffer b的资料粘贴
 (5)取代
 r: 取代光标所在处的字符:[常用]
 r:取代字符直到按esc为止。
 (6)复原(undo)上一个指令
 u:假如您误操作一个指令,可以马上按u,回复到上一个操作。[超常用]
 .: .可以重复执行上一次的指令。
 (7)更改
 cw:更改光标所在处的字到字尾$处。
 c#w:例如,c3w代表更改3个字。
 (8)跳至指定行
 ctrl+g:列出光标所在行的行号。
 #g:例如,15g,表示移动光标至文章的第15行行首。[常用]
 last line mode下指令简介
 读者您要使用last line mode之前,请记得先按esc键确定您已经处于command mode下后,再按冒号“:”或“/”或“?”
 三键的其中一键进入last line mode。
 1.列出行号
 set nu: 输入“set nu”后,会在文章的每一行前面列出行号。
 2.跳到文章的某一行
 #:井号代表一个数字,在last line mode提示符号“:”前输入数字,再按enter就会跳到该行了,
 如:15[enter]就会跳到文章的第15行。[常用]
 3.寻找字符串
 /关键字:先按/,再输入您想寻找的字,如果第一次找的关键字不是您相尽可能的,可以一直按n会往下寻找到您要的关键字为止。
 ?关键字:先按?,再输入您想寻找的字,如果第一次找的关键字不是您想要的,可以按n会往前寻找到您要的关键字为止。
 4.取代字符串
 1,$s/string/replae/g:在last line mode输入“1,$s/string/replace/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字符串。
 5.存文件
 w:在last line mode提示符号“:”前按w即可将文件存起来。[超常用]
 #,# w filename:如果您想摘取文章的某一段,存成另一个文件,可用这个指令#代表行号,例如30,50 w nice,
 将您正在编辑文章的第30~50行存成nice这个文件。
 6.离开
 q:按q就离开,有时如果无法离开vi,可搭配“!:强置离开vi,如“q!”
 qw:一般建议离开时,搭配w一起使用,如此离开时还可存文件

6.如何使用vi命令打开文件


  用vi命令打开文件直接跳到最后一行的方法如下:
 :$ 跳到文件最后一行
:0或:1 跳到文件第一行
 或 另外一组命令:
 gg 跳到文件第一行
shift + g 跳到文件最后一行
 常用的操作:
 查看当前目录:pwd 修改密码:passwd 更换模式:csh,bash
 远程登陆:telnet 服务器ip 回到上级目录:cd ..
 查看该目录下的文件夹:ls 打开文件:vi /文件夹/文件
 文件显示的格式:root:x:0:root?:/root;/bin/bash 用户名,加密,序号,组,默认路径 退出:esc shift+: q! quit exit 清空:clear
 显示当前目录所有文件:ls –a
 显示当前目录所有文件和详细信息:ls –al 新建文件:vi 文件名
 文件的权限:chmod g –(+)r w x u g o s
 新建文件(不能编辑)更新文件的访问时间,如果存在文件,更新,不存在,建立:touch 文件名 创建目录:mkdir 目录名/目录名
 创建多个目录:mkdir 目录名 目录名?..
 在主目录创建下目录:mkdir ~/目录名 创建多级目录:mkdir –p 目录名/目录名 在覆盖文件前做个提示:cp –i 文件和文件内容间的拷贝:cp 复制目录:cp –r 目录 目录 复制文件:cp 文件 文件
 移动文件:mv 要移动的文件 要移动到的目录 移动目录:mv -fi要移动的目录 要移动到的目录 修改文件或目录的名字:mv 文件 名字 删除文件:rm rm –i提示
 删除目录中的所有内容包括目录:rm –r 要删除的文件夹
 连接:软连接:相当于创建快捷方式,作用:修改linux内核会用到他 in 硬连接:如果删除源文件,被连接的文件内容还存在 帮助:man 命令
 进入vi的命令 :
 vi filename :打开或新建文件,并将光标置于第一行首 vi +n filename :打开文件,并将光标置于第n行首 vi + filename :打开文件,并将光标置于最后一行首
 vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处 vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filename vi filename....filename :打开多个文件,依次进行编辑。

以上就是关于「vi如何使用方法」的全部内容,本文讲解到这里啦,希望对大家有所帮助。如果你还想了解更多这方面的信息,记得收藏关注本站~

Win10系统之家wWw.ghoSt580.net♂独①家使用,不得自行转载,违者必追究!】

相关文章

  • vi如何使用方法

    vi如何使用方法

    1.linux系统中vi编辑器如何使用?建议找一下相关的linux教程,在百度知道上几句话说不清楚。vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单地介绍一下它的用法和一...
  • 10米鱼竿如何使用方法

    10米鱼竿如何使用方法

    1.钢丝绳卡扣正确使用方法在使用钢丝绳卡扣时,要把U形螺栓拧紧,直到钢丝绳被压扁1/3左右为止。由于钢丝绳在受力后产生变形,绳卡在钢丝绳受力后要进行第二次拧紧,以保证接头的牢靠。如需检查钢丝绳在受力后,绳卡是否滑...
  • 如何退出vi命令

    如何退出vi命令

    1.linuxvi保存退出命令(如何退出vi)有很多方法:退出Vi当编辑完文件,准备退出Vi返回到shell时,可以使用以下几种方法之一。在命令模式中,连按两次大写字母Z,若当前编辑的文件曾被修改过,则Vi保存该文件后退出,返回到sh...
  • linux下如何退出vi

    linux下如何退出vi

    1.linux下退出VI的方法:不保存退出去百度文库查看完整内容。2.linux系统中如何进入退出vim编辑器,方法及区进入VIM编辑器1VIM编辑器,可以新建文件也可以修改文件,命令为:vim/usr/local/con.cfg如图!2如果这个文件,以...