vi常用操作
什么是vi:
vi是Linux/Unix底下最常用的文本编辑器,可以理解为和Windows下的txt一样,咱们一般操作linux服务器的时候都是没有图形化界面的, 怎么移动光标,到哪个位置,替换修改什么的都得用vi里面的操作
vi有两种模式
命令模式
进入vi时的默认模式,此模式下所有的用户输入都视为命令
用户在此模式下进行搜索、复制、替换等
编辑模式
用户在此模式下可以编辑文本内容,也就是这个模式下,可以随便输入内容,编辑模式只有一个作用,就是输入内容,其他的查找、粘贴、替换等等都得在命令模式下操作模式切换
命令模式进入编辑模式:
i | 当前位置 |
a | 下一位置 |
o | 下一行 |
编辑模式进入命令模式:
esc | 编辑模式进入命令模式 |
区分编辑模式和命令模式就看左下角有没有insert,左下角如果有insert就是编辑模式。
下面介绍命令模式常用的操作,注意都是在命令模式下的
退出vi
:q | 退出 vi |
:q! | 不保存退出 |
:wq | 保存退出 |
:x | 保存退出 |
:w | 保存 |
光标定位
M | 移动光标到页面中央 |
L | 移动光标到页面尾处 |
H | 移动光标到页面开始处 |
ctrl+f | 向后翻页 |
ctrl+b | 向前翻页 |
0 | 移动光标到行首 |
$ | 移动光标到行尾 |
/: | 从上往下开始查找,然后按n寻找下一个 |
?: | 从下往上开始查找,然后按n寻找下一个 |
撤销、重复、查找
/xxx | 从上往下开始查找 |
/?xxx | 从下往上开始查找 |
u | 撤销 |
. | 重复前一个动作 |
复制、粘贴、删除
nyy | 复制光标所在的向下n行内容 |
p | 在光标处粘贴复制的内容 |
ndd | 删除光标所在向下n行的内容 |
ctrl + d | 往下翻半屏内容 |
ctrl + u | 往上翻半屏内容 |
shift + g | 到文件末尾 |
dd | 删除整行 |
:set number | 显示行号 |
:set nonu | 取消显示行号 |
:1,3y | 复制第一行到第三行 |
:1,3d | 删除第一行到第三行 |
:1,3s/str/str_new/g | 替换第一行到第三行中的字符串 |
:%s/str/str_new/g | 替换所有行中的字符串 |
vi常用操作的更多相关文章
- (转)vim(vi)常用操作及记忆方法
vim(vi)常用操作及记忆方法 原文:https://www.cnblogs.com/doseoer/p/6241443.html vi(vim)可以说是linux中用得最多的工具了,不管你配置服务 ...
- vim(vi)常用操作及记忆方法
vi(vim)可以说是linux中用得最多的工具了,不管你配置服务也好,写脚本也好,总会用到它.但是,vim作为一个“纯字符”模式下的工具,它的操作和WINDOWS中的文本编辑工具相比多少有些复杂.这 ...
- Vim/Vi常用操作(第二版)
周围同事不是用vim就是Emacs,你要是用一ultraedit,你都不好意思跟人家打招呼;什么插件呀,语法高亮呀,拼写检查呀,能给它开的都给它开着,就是一个字儿:酷. 你说这么牛B一东西,怎么着学会 ...
- linux vi常用操作
1.基本操作 进入vi vi 或者 vim 进入一个文件或者新建一个文件 例如:vim 11.txt vi有3种模式 一般模式:刚进入时.按esc时. 编辑模式:按下字母[i, I, o, O, a, ...
- vi命令常用操作
一.vi的操作模式 vi提供两种操作模式:输入模式(insert mode)和指令模式(command mode).在输入模式下,用户可输入文本资料.在指令模式下,可进行删除.修改等各种编辑动作. ...
- 想法子记忆Vi/Vim常用操作及指令
本笔记有特殊目录,点击开启: 专有目录 在Linux系统中编辑文本总是离不开一位老帮手--Vi.而因为其诞生的年代有些久远,有些操作在现在看来可能有点"反直觉". 于是我决定写这样 ...
- Ubuntu中vi常用命令
在Ubuntu中经常需要修改某些文件,这里对vi中的一些常用操作作一下总结. 1.进入vi命令 vi filename: 打开或新建文件,并将光标置于第一行首 进入文件后,处于命令行模式(comman ...
- centos的vi常用用法
centos的vi常用用法 vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单地介绍一下它的用法和一小部分指令.由于对Unix及Linux系统的 ...
- vi 常用命令行
vi 常用命令行 1.vi 模式 a) 一般模式: vi 处理文件时,一进入该文件,就是一般模式了. b) 编辑模式:在一般模式下可以进行删除,复制,粘贴等操作,却无法进行编辑操作.等按下‘i,I ...
随机推荐
- ajax返回数据定义为全局变量
var result; //定义全局变量 $(document).ready(function(){ $.ajax({ type:'PO ...
- 100Mbps和100MB/s
作为毕业2年计算机专业的学生,现在才知道100Mbps和100MB/s的概念,实在是渣. Mbps=Mbit/s即兆比特每秒.Million bits per second的缩写传输速率是指设备的的数 ...
- 201621123001 《Java程序设计》第12周学习总结
1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多流与文件相关内容. 字节流以字节为基本处理单位,字符流以字符为基本处理单位,以Reader和Writer为基础派生出的一系列类 字 ...
- Linux:进程
进程 一.简略操作 1.查看进程:ps2.查看进程资源占用量:top3.查看进程关系(进程树):pstree4.查看当前系统信息:uname -a 二.详细操作 1.查看进程:ps 2.查看进程资源占 ...
- Nginx web服务器
文件读取会使用到以下几个配置 1. sendfile 使用nginx作为静态资源服务时,通过配置sendfile可以有效提高文件读取效率,设置为on表示启动高效传输文件的模式.sendfile可以让N ...
- embedding与word2vec
embedding是指将目标向量化,常用于自然语言处理(如:Word2Vec).这种思想的意义在于,可以将语义问题转换为数值计算问题,从而使计算机能够便捷处理自然语言问题.如果采用传统的One-hot ...
- Python基础4--一看就会的选择与循环
1 选择 if elif else 注意后面均有: if age>18: print 'adult' elif age>6: print 'teenager' else: print 'k ...
- 1--Selenium环境准备--Eclipse 添加Testng插件
Eclipse安装TestNG TestNG官网地址:http://testng.org/ 1.离线安装TestNG插件: 受网络等因素影响,在线安装方式速度比较慢,可以通过如下方式离线安装TestN ...
- SQL注入之Sqli-labs系列第二十四关(二阶注入)
开始挑战第二十四关(Second Degree Injections) 0x1 前言 SQL注入一般分为两类:一阶SQL注入(普通SQL注入),二阶SQL注入 .二次注入不是注入两次的意思,请不要混淆 ...
- 2017第八届蓝桥杯C/C++ B组省赛-购物单
标题: 购物单 小明刚刚找到工作,老板人很好,只是老板夫人很爱购物.老板忙的时候经常让小明帮忙到商场代为购物.小明很厌烦,但又不好推辞. 这不,XX大促销又来了!老板夫人开出了长长的购物单,都是有打折 ...