Linux 中 Vi 编辑器的简单操作
Linux 中 Vi 编辑器的简单操作
Vi 编辑器一共有3种模式:命名模式(默认),尾行模式,编辑模式。3种模式彼此需要切换。
一、进入 Vi 编辑器的的命令
vi filename //打开或新建文件,并将光标置于第一行首
vi +n filename //打开文件,并将光标置于第n行首
vi + filename //打开文件,并将光标置于最后一行首
vi +/pattern filename //打开文件,并将光标置于第一个与 pattern 匹配处
vi -r filename //在上次使用 vi 编辑时发生系统崩溃,恢复 filename
二、Vi 3种模式的切换
一)、从命令模式到编辑模式
在命令模式下按以下命令将进入到编辑模式
1、a 在光标后进入编辑模式
2、i 在光标前进入编辑模式
3、A 在当前行尾进入编辑模式
4、I 在当前行首进入编辑模式
5、o 在当前行之下新开一行
6、O 在当前行之上新开一行
7、s 删除光标所对应的字符,进入编辑模式
8、ns //删除 n 个字符后进入编辑模式
9、S 删除光标所在的行,然后进入编辑模式
10、nS //删除 n 行后,进入编辑模式
三、命令模式下的操作
一)、光标的移动
1、j 光标向下移动一行
2、k 光标向上移动一行
3、h 光标向左移动一个字符
4、l 光标向右移动一个字符
5、ctrl + b //光标向上移动一屏,向后翻页
6、ctrl + f //光标向下移动一屏,向前翻页
7、$ //光标移动至行尾
8、0(数字) //光标移动至行首
9、gg //光标移动至文档开始处
10、G //光标移动至文档尾部
11、nG //光标移动到第 n 行
12、w //移动到下个单词的首字母
13、b //移动到本单词或者上个单词的首字母
14、e //移动到本单词或者下个单词的尾字母
15、{ //光标移动到段落首部
16、} //光标移动到段落尾部
17、L //光标移动到当前屏幕尾部(不会走到下一屏)
18、H //光标移动到当前屏幕首部
19、M //光标移动至当前屏幕中间行
20、space //光标向前移动一个字符
21、Backspace //光标向后移动一个字符
22、n+ //光标下移 n 行
23、n- //光标上移 n 行
24、n$ //光标移动至第 n 行尾
二)、文本内容的删除
1、x //删除光标所在位置的一个字符
2、nx //删除光标所在位置起 n个字符
3、dx //从当前字符删除到下个单词前,包括空格
4、ndx //从当前字符(单词)起,删除n个单词,包括最后一个空格后面的空格
5、dd //删除当前行
6、ndd //删除当前行起向下 n 行
7、J //删除光标所在行与下一行之间的空格,把光标行和下一行接在一起
通用删除:d+光标移动距离
8、d$ //删除光标到行尾的内容
9、d0 //删除光标到行首的内容
10、d} //删除从光标到段落尾部的内容
11、d{ //删除从光标到段落首部的内容
12、dL //删除当前行至屏幕尾部的内容
13、dH //删除当前行至屏幕首部的内容
14、dG //删除当前行至文档尾部的内容
15、d1G //删除当前行至文档首部的内容
16、dnG //删除当前行至文档的第 n 行
三)、文本内容的复制与粘帖
1、yy 复制当前行
2、nyy 复制从当前行开始向下的n行
3、y+光标移动的距离,可以进行灵活复制 (可以参考删除命令)
3、p 在光标之后粘贴(光标当前行的下一行进行粘贴)
4、P(大写) 在光标之前粘贴
三)、其他命令模式下的操作
1、u //撤销修改或删除操作
2、r+字符 //对光标当前单个字符进行替换
3、R //替换当前字符及其后的字符,直至按 ESC 键
3、. //重复执行上个命令
四、尾行模式下的操作
一)、文件的保存与退出
1、:w //保存
2、:w filename //另存为到 filename 文件
3、:wq //保存退出
4、:q //退出
5、:wq! //强制保存退出
6、:q! //不保存强制退出
7、:x //保存并退出 ,应该和 wq! 功能一样
二)、查找与替换
1)、/search 正向查找字符串 search,按 n 键查找下一个,按 N 键查找上一个
2)、?search 反向查找字符串 search
3)、s /search/replace 替换当前行首次出现的 search
4)、s /search/replace/g 把当前光标所在行中的 search 替换成 replace,并把文档中其余的 search 高亮显示
5)、%s /search/replace 把文档中所有的 search 替换成 replace
6)、m,n s /search/replace/g 把文档中从第m行到第n行中的 search 替换成 replace ,将把文档中其余的 search 高亮显示
三)、尾行模式下的文本编辑(复制,删除)
1)、n1,n2 co n3 //将 n1 行到 n2 行的内容复制到 n3 行下
2)、n1,n2 m n3 //将 n1 行到 n2 行的内容移动至 n3 行下
3)、n1,n2 d //将 n1 行到 n2 行之间的内容删除
:set nu/number //给文件每行内容设置编号
:set nonu/nonumber //取消设置编号
:n 光标跳转到第 n 行位置
五、编辑模式下的操作
1、ctrl+u //删除编辑模式下输入的文本内容
Linux 中 Vi 编辑器的简单操作的更多相关文章
- Linux中vi编辑器的使用详解
vi编辑器是Linux系统下标准的编辑器.而且不逊色于其他任何最新的编辑器.可是会用的有多少呢.下面介绍一下vi编辑器的简单用法和部分命令.让你在Linux系统中畅行无阻. 基本上vi可以分为三种状态 ...
- linux中vi编辑器的使用
vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本 编辑器,这里只是简单地介绍一下它的用法和一小部分指令.由于对Unix及Linux系统的任 何版本,vi编辑器是完 ...
- linux中vi编辑器
vi编辑器,通常称之为vi,是一种广泛存在于各种UNIX和Linux系 统中的文本编辑程序.它的功能十分强大,但是命令繁多,不容易掌握,它可以执行输出.删除.查找.替换.块操作等众多文本操作,而且用户 ...
- linux中vi编辑器(转载)
三种模式相互切换 在命令终端输入vi进入vi编辑器. 命令模式:进入编辑器即进入命令模式, 输入模式:在命令模式下输入“i ”进入输入模式: 末行模式:按“:”进入末行模式: 在输入模式切换至末行模式 ...
- Linux中vi编辑器的用法
实验一: vi编辑器的模式切换 1. 实验目标:熟练掌握vi编辑器的三种模式间切换及其特点 2. 实验操作步骤: 步骤一: 进入vi编辑器即命令模式 进入vi编辑器可以在命令终 ...
- linux中VI编辑器使用个人记录
VI编辑器有三种编辑模式:命令模式.最后行模式.文本编辑模式 启动VI后进入的第一种模式是”命令模式“.从命令模式可进入最后行模式和编辑模式.而后两种模式之间不能直接切换.必须按ESC键退回到命令模式 ...
- linux中vi编辑器没有颜色
vi是没有颜色的,vim是有颜色的.可是系统中没有安装vim. 我们可以通过 rpm -qa |grep vim 看看系统中是否安装了下面3个rpm包,如果有就是安装了vim. 点击(此处)折叠或打开 ...
- linux中Vi编辑器使用
1.如需要编辑aaa.txt文件: vi aaa.txt 就可以进入到 aaa.txt文件中, 输入 i 进入到编辑模式, 按 Esc 退出编辑模式 , :wq 保存退出编辑模式 ...
- Linux下vi编辑器粘贴复制剪切功能
RedHat 9.0 Linux下vi编辑器实现简单的粘贴复制剪切功能": 如果想把文件内的第三行内容黏贴到第十五行: 1.进入你的文件,(处于命令模式,而不是编辑模式) 2.将你的光标移到 ...
随机推荐
- .net 中select和where的区别
Select(p=>p.ID==id) 这里选择的结果是通过p,访问迭代器,然后选取的是p.ID==id的结果,选择到的是bool对象 Where(p=>p.ID==id) 这里是过滤,p ...
- 浅谈数位DP
在了解数位dp之前,先来看一个问题: 例1.求a~b中不包含49的数的个数. 0 < a.b < 2*10^9 注意到n的数据范围非常大,暴力求解是不可能的,考虑dp,如果直接记录下数字, ...
- 二模12day2解题报告
T1.笨笨玩糖果(sugar) 有n颗糖,两个人轮流取质数颗糖,先取不了的(0或1)为输,求先手能否必胜,能,输出最少几步肯定能赢:不能,输出-1. 一开始天真的写了一个dp,f[i]表示i颗糖最少取 ...
- 16.C语言中数据类型的本质含义是:表示一个内存格子的长度和解析方法。
数据类型决定长度的含义:我们一个内存地址(0x30000000),本来这个地址只代表1个字节的长度,但是实际上我们可以通过给他一个类型(int),让他有了长度(4),这样这个代表内存地址的数字(0x3 ...
- NodeJS学习三之API
Node采用V8引擎处理JavaScript脚本,最大特点就是单线程运行,一次只能运行一个任务.这导致Node大量采用异步操作(asynchronous opertion),即任务不是马上执行,而是插 ...
- rabbitMQ学习(四)
按照routing key接收信息 发送端: public class EmitLogDirect { private static final String EXCHANGE_NAME = &quo ...
- devexpress bandgridview使用总结(14.2)
这两天利用bandgridview做表头,希望做成如下形状 在制作过程中发现如果想实现动态表头,代码的书写顺序需要稍加注意 实例化gridband 绑定gridband至bandgridview gr ...
- 树莓派上Java程序作为linux服务并开机自动启动
http://www.iigrowing.cn/shu_mei_pai_shang_java_cheng_xu_zuo_wei_linux_fu_wu_bing_kai_ji_zi_dong_qi_d ...
- css书写规范及特殊样式
1.CSS书写顺序: (1)位置:position.top.right.z-index.display.float (2)大小:width.height.padding.margin (3)文字系列: ...
- linux 学习15 16 启动管理,备份和恢复
第十五讲 启动管理 . CentOS .x 启动管理 //此处指6.3 系统运行级别 .运行级别 运行级别 含 义 关机 单用户模式,可以想象为windows的安全模式,主要用于系统修复 //linu ...