Linux学习笔记:vi常用命令
在Linux系统中常用vi命令进行文本编辑。
vi命令是UNIX操作系统和类UNIX操作系统中最通用的全屏幕纯文本编辑器。Linux中的vi编辑器叫vim,它是vi的增强版(vi Improved),与vi编辑器完全兼容,而且实现了很多增强功能。
- 编辑模式:文本的编辑功能(insert mode)
- 命令模式:文件的操作命令(command mode)
默认情况下,打开vi编辑器后自动进入命令模式。从编辑模式切换到命令模式使用“esc”键,从命令模式切换到编辑模式使用“A”、“a”、“O”、“o”、“I”、“i”键。
vi编辑器提供了丰富的内置命令,有些内置命令使用键盘组合键即可完成,有些内置命令则需要以冒号“:”开头输入。
一、最经常使用命令:
vi myfile —— 编辑文件
hjkl —— 光标上下左右
esc —— 返回命令行模式
a —— 光标之后插入
i —— 光标之前插入
o —— 插入下一行
x —— 删除一个字符
X —— 删除前一个字符
dd —— 删除整行
yw —— 复制
p —— 粘贴
u —— 恢复操作
:w filename —— 按指定的文件名保存
:wq —— 保存并退出
:q! —— 强制退出
注意:
1.用vi打开文件后,是处于「命令行模式(command mode)」,要切换到「插入模式(Insert mode)」才能够输入文字。切换方法:在「命令行模式(command mode)」下按一下字母「i」就可以进入「插入模式(Insert mode)」,才可以开始输入文字。
2.编辑好后,需从插入模式切换为命令行模式才能对文件进行保存,切换方法:按「ESC」键。
3.保存并退出文件:在命令模式下输入:wq即可!(别忘了wq前面的:)
二、全部命令:
1.进入vi的命令
vi filename —— 打开或新建文件,并将光标置于第一行首
vi +n filename —— 打开文件,并将光标置于第n行首
vi + filename —— 打开文件,并将光标置于最后一行首
vi +/pattern filename —— 打开文件,并将光标置于第一个与pattern匹配的串处
vi -r filename —— 在上次正用vi编辑时发生系统崩溃,恢复filename
vi filename....filename —— 打开多个文件,依次进行编辑
2.移动光标(上下左右箭头也可以,正规的为hjkl)
h —— 左
j —— 下
k —— 上
l —— 右
Ctrl+u —— 向文件首翻半屏
Ctrl+d —— 向文件尾翻半屏
Ctrl+f —— 向文件尾翻一屏
Ctrl+b —— 向文件首翻一屏
0(零) —— 当前行首
G —— 最后一行
$ —— 所在行的行尾
^ —— 所在行的行首
w —— 下个字母的字首
e —— 下个字母的字尾
b —— 上一个字母的字首
3.插入文本
i —— 插入模式,光标前
a —— 插入模式,光标后
o —— 插入模式,下一行行首
r —— 替换光标所在处的字符
R —— 替换光标所到的字符,知道按下“esc”键为止
4.删除文字
x —— 删除光标所在位置后面一个字符
8x —— 删除后面8个字符
X —— 删除光标前面一个字符
8X —— 删除光标前面8个字符
dd —— 删除光标所在行
8dd —— 删除8行
5.复制粘贴
yw —— 将光标所在之处到字尾的字符复制到缓冲区中
5yw —— 复制5个字到缓冲区
yy —— 复制整行
5yy —— 复制6行
p —— 将缓冲区内的字符贴到光标所在位置。注意:所有与“y”有关的复制命令都必须与“p”配合才能完成复制与粘贴功能。
6.恢复上一次操作
u —— 恢复上一个操作,多次按“u”可以执行多次恢复
7.更改
cw —— 更改光标所在处的字到字尾处
5cw —— 更改5个字
8.跳至指定行
ctrl + g —— 列出光标所在行号及百分比
5G —— 移动至第5行行首
9.Last line mode
在处于“command mode”模式下,按“:”进入“last line mode”
:set nu —— 列出行号(set number)
:set nonumber —— 不显示行号
:f —— 显示比例
:#(5) —— 跳到第5行
:/key —— 查找字符,一直按n可以往后搜索
:?key —— 查找字符,一直按n可以往前搜索
:w —— 保存文件
:q —— 退出vi
:q! —— 强制退出vi
:wq —— 保存并退出
END 2018-08-21 16:46:05
Linux学习笔记:vi常用命令的更多相关文章
- Linux学习笔记:常用命令
个人常用的Linux命令总结(持续更新): 切换目录:cd 列出目录下面的文件:ls 显示当前所在的目录:pwd 操作文件 新建文件:touch file01 查看文件内容:less more cat ...
- Linux学习笔记:常用命令grep、iconv、cp、mv、rm
本篇记录一些近期常用的命令. 一.grep过滤 grep过滤 不包含某些字符串 cat test.txt | grep -v '.jpg' 过滤jpg结尾的图片 cat test.txt | grep ...
- LInux学习笔记之常用命令
以下命令主要是平时用到的命令,对于一些经常用到的,就收集资料,归纳一下. 指令目录: 1.yum命令: 2.wget命令: 3.tar命令: 4../configure,make,make insta ...
- linux学习笔记-2.常用命令
说明:安装linux时,创建一个luao用户,然后使用root用户登陆系统 1.进入到用户根目录 cd ~ 或 cd cd / 返回到根目录 2.查看当前所在目录 pwd 3.进入到luao用户根目录 ...
- linux学习笔记 其他常用命令
cd + 回车 = cd ~ 进入当前用户主目录 查看指定进程信息 *ps -ef |grep 进程名 *ps -查看属于自己的进程 *ps -aux 查看所有的用户的执行进程 换成 ps - ...
- 【Linux学习笔记】常用命令速记
创建文件夹:mkdir 文件夹名 删除文件夹 rmdir 文件夹名 进入文件夹 cd 文件夹名 给某个目录所有用户配置读写权限:chmod 777 -R 文件夹名(-R会递归里面所有的子文件夹并给和父 ...
- Linux学习笔记:常用100条命令(三)
linux常用命令 1.查看当前yum源 yum list 2.查看电脑以及操作系统的相关信息 uname -a 3.查看当前版本信息 cat /proc/version 4.查看发行版本信息 cat ...
- Linux学习笔记:常用100条命令(二)
linux常用命令 1.vi中复制快捷键 yy --复制 p --粘贴 2.vi中保存退出 ZZ 3.linux解压zip unzip 4.查看软件组包 yum grouplist 5.安装组包 yu ...
- Linux学习笔记:常用100条命令(一)
linux常用命令 1.关机 shutdown -h now 立刻关机 poweroff shutdown -r now 立刻重启 reboot logout 注销 2.进入图形界面 startx 3 ...
- Linux学习之路--常用命令讲解
Linux常用命令讲解 1.命令格式:命令 [-选项] [参数] 超级用户的提示符是# 一般用户的提示符是$ 如:ls -la /usr说明: 大部分命令遵从该格式多个选项时,可以一起写 eg:ls ...
随机推荐
- Python实现类似JavaScript 的Json对象
Python实现类似JavaScript 的Json对象 用过js的都知道 js中json也是一个对象,所以可以直接通过class.attr 取值,当attr不存在时也不会报错,那么Python可不可 ...
- lumen 使用 laravel-cors 的时候, 使用 dd 函数的解决方法
if (! function_exists('dd')) { /** * Dump the passed variables and end the script. * * @param mixed ...
- python set() 集合的添加删除、交集、并集、差集、交叉补集、集合的方法介绍以及使用案例
可变不可变: 1.可变:列表.字典.例如列表类型是可变的,我修改了列表中的元素的值,但是列表本身在内存中的地址是没有变化的,所以列表的元素是可以被改变的 >>> name=[&quo ...
- Redis 3.2.8集群+Sentinel部署
Redis3.2.8集群搭建 采用官方推荐的三主三从分片方案,本例中所有节点部署在一台主机上. 软件安装: tar zxvf redis-3.2.8.tar.gz cd redis-3.2.8 ma ...
- MinGW安装设置
From:http://www.cnblogs.com/killerlegend/p/3746504.html Author:KillerLegend Date:2014.5.22 不得不吐槽一下学校 ...
- centos无法通过ssh连接的解决
系统环境是centos7,虚拟机环境下的.在使用ssh工具连接虚拟机的时候发现连接不上,用的是root 先检查openssh-server是否安装: yum list installed | grep ...
- 谈谈动态地加载Jquery库文件的方法
有时候,我们可能不会在网页中<script src="jquery.min.js" 来加载 Jquery 库,可能在用户点击某个按钮后,才去加载 Jquery 库. 好处不用 ...
- 【leetcode 简单】 第七十二题 各位相加
给定一个非负整数 num,反复将各个位上的数字相加,直到结果为一位数. 示例: 输入: 38 输出: 2 解释: 各位相加的过程为:3 + 8 = 11, 1 + 1 = 2. 由于 2 是一位数,所 ...
- python初步学习-练习题
1.实现1-100的所有的和 #!/usr/bin/env python #encoding:utf8 '''实现1-100的所有的和 1. 使用列表解析获取0-100的列表 2. 使用reduce内 ...
- 面试:----Nginx的一理解
1.静态HTTP服务器 首先,Nginx是一个HTTP服务器,可以将服务器上的静态文件(如HTML.图片)通过HTTP协议展现给客户端. 配置: 2.反向代理服务器 什么是反向代理? 客户端本来可以直 ...