vi/vim 命令使用详解

1、Linux下创建文件

vi test.txt  或者 vim test.txt 或者 touch test.txt

2、vi/vim 使用

基本上 vi/vim 共分为三种模式,分别是命令模式(Command mode)输入模式(Insert mode)底线命令模式(Last line mode)。

(1)命令模式

x,X                          x为向后删除一个字符,X为先前删除一个字符
nx(n代表数字)                 向后删除n个字符
dd                           删除当前行
D                            删除当前行所有字符,试成为空行
ndd(n代表数字)                删除光标所在行的向下n列
d1G                          删除光标所在行到第一行的所有数据
dG                           删除光标所在行到最后一行的所有数据
yy                           复制光标所在行
y1G                          复制光标所在行到第一行的所有数据
yG                           复制光标所在行到最后一行的所有数据
ynj(n代表数字)                复制光标所在行向下n+1行
dnj(n代表数字)                删除光标所在行向下n+1行
p,P                          p为复制的数据粘贴在光标的下一行,P为复制的数据粘贴在光标的上一行
J                            将光标所在行与下一行的数据结合成一行
u                            恢复前一个动作(undo)
h                            光标向左移一个字符
j                            光标向下移一个字符
k                            光标向上移一个字符
l                            光标向右移一个字符
Ctrl+f                       屏幕向下翻一页
Ctrl+b                       屏幕向上翻一页
Ctrl+d                       屏幕向下翻半页
Ctrl+u                       屏幕向上翻半页
+                            光标移动到下一行的第一个非空字符
-                            光标移动到当前行的第一个非空字符
n空格(n代表数字)               光标向当前行向右移动n个字符
0(数字0)                      光标移动到当前行的第一个字符(可以为空字符,注意与-区分)
$                            光标移动到当前行的最后一个字符(可以为空字符,注意与-区分)
H                            光标移动到当前屏幕最上方的那一行的第一个非空字符
M                            光标移动到当前屏幕最中间那一行的第一个非空字符
L                            光标移动到当前屏幕最下方的那一行的第一个非空字符
G                            光标移动到该文章最后一行的第一个非空字符
nG(n代表数字)                 光标移动到该文章第n行的第一个非空字符
n                            光标从当前行向下移动n行的第一个非空字符

(2)输入模式

i,I                          i为在当前光标所在处插入输入的文字,I为在光标所在行第一个非空字符插入输入的文字
a,A                          a为在当前光标所在处下一个字符插入输入的文字,A为在光标所在行最后一个字符的下一个字符处插入输入的文字
o,O                          o为在光标所在行的下一行行首开始插入字符,O为在光标所在行的上一行行首开始插入字符
r,R                          r为替换光标所在那一个字符,R为一直替换光标所指的文字,直到退出
Esc                          退出,回到命令模式

(3)底线命令模式

/word                        在光标之后查找word字符串
?word                        在光标之前查找word字符串
:s/word1/word2/g             在光标当前行查找word1,并替换成word2
:n1,n2s/word1/word2/g      在第n1行与第n2行之间查找word1,并替换成word2
:%s/word1/word2/g           整个文章查找word1,并替换成word2
:w                           将编辑的数据保存到硬盘文件中
:w [filename]                将编辑后的数据保存到硬盘的另一个文件中
:r [filename]                在编辑数据时,读入另一个文件中的数据,即将filename文件中的内容加到光标所在行下一行
:wq或:x                      保存并退出
:q                           退出,适用于未修改的文件
:q!                          强制退出,适用于修改文件后不保存退出
:set nu                      显示行号
:set nonu                    取消行号
:n1,n2 w [filename]          将n1到n2行的内容保存到名为filename的文件中

下面是vi/vim的工作模式图示:

vi/vim 键盘图:

原文地址:https://www.cnblogs.com/Jimc/p/10213914.html

时间: 2024-10-08 08:08:49

vi/vim 命令使用详解的相关文章

Linux下创建文本文件(vi/vim命令使用详解)

vi test.txt 或者 vim test.txt vim是vi的升级版,指令更多,功能更强. 下面是收集的vim用法,当在vim里面要实现退出,首先要做的是按[Esc],然后再输入[:wq] 一.一般模式:删除.复制与粘贴类命令 x,X x为向后删除一个字符,X为先前删除一个字符 nx(n代表数字) 向后删除n个字符 dd 删除当前行 D 删除当前行所有字符,试成为空行 ndd(n代表数字) 删除光标所在行的向下n列 d1G 删除光标所在行到第一行的所有数据 dG 删除光标所在行到最后一行

13、Vim编辑器使用详解

Vim编辑器使用详解 vim介绍 为什么要学习vim vim三种模式 vim工作模式(图解) vim如何打开文件 vim关闭文件 命令模式光标跳转 字符间跳转: 单词间跳转: 行首行尾跳转: 行间移动: VIM的命令模式下的命令: 字符编辑: 替换命令(r, replace) 删除命令: 复制命令 粘贴命令(p, paste): : 其他相关的编辑操作: 翻屏操作: 查找操作: VIM末行模式的操作: 地址定界 查找和替换 练习: 多文件模式: 窗口分隔模式: 定制vim的工作特性: Vim编辑

Linux常用命令与详解

Linux常用命令与详解 在Linux系统中文件删除.创建.更改等操作都是通过一个个不同的命令来完成我们想要的操作,那么什么是命令呢? 凡是在字符操作界面中输入的能够完成特定操作和任务的字符串都可以称为命令.严格来说,命令通常只代表了实现某一类功能的指令或程序的名称. 下面我们就来了解Linux系统中命令的分类有哪些?命令行的组成格式有哪些?常用的命令有哪些? Linux命令的分类 内部命令 内部命令是指集成于 Shell 解释器程序内部的一些特殊指令,也称为内建指令.内部命令无须从硬盘中重新读

Pip 命令使用详解

Pip 命令使用详解 2015-01-06 21:44 3033人阅读 评论(0) 收藏 举报  分类: debian(3)  redis(1)  python 1.pip下载安装1.1 pip下载 1 # wget "https://pypi.python.org/packages/source/p/pip/pip-1.5.4.tar.gz#md5=834b2904f92d46aaa333267fb1c922bb" --no-check-certificate 1.2 pip安装 1

linux wget 命令用法详解(附实例说明)

Linux wget是一个下载文件的工具,它用在命令行下.对于Linux用户是必不可少的工具,尤其对于网络管理员,经常要下载一些软件或从远程服务器恢复备份到本地服务器.如果我们使用虚拟主机,处理这样的事务我们只能先从远程服务器下载到我们电脑磁盘,然后再用ftp工具上传到服务器.这样既浪费时间又浪费精力,那不没办法的事.而到了Linux VPS,它则可以直接下载到服务器而不用经过上传这一步.wget工具体积小但功能完善,它支持断点下载功能,同时支持FTP和HTTP下载方式,支持代理服务器和设置起来

linux nc命令使用详解(转)

linux nc命令使用详解 功能说明:功能强大的网络工具 语 法:nc [-hlnruz][-g<网关...>][-G<指向器数目>][-i<延迟秒数>][-o<输出文件>][-p<通信端口>][-s<来源位址>][-v...][-w<超时秒数>][主机名称][通信端口...] 参 数: -g<网关> 设置路由器跃程通信网关,最丢哦可设置8个. -G<指向器数目> 设置来源路由指向器,其数值为4的

【转】 wget 命令用法详解

wget是在Linux下开发的开放源代码的软件,作者是Hrvoje Niksic,后来被移植到包括Windows在内的各个平台上.它有以下功能和特点:(1)支持断点下传功能:这一点,也是网络蚂蚁和FlashGet当年最大的卖点,现在,Wget也可以使用此功能,那些网络不是太好的用户可以放心了:(2)同时支持FTP和HTTP下载方式:尽管现在大部分软件可以使用HTTP方式下载,但是,有些时候,仍然需要使用FTP方式下载软件:(3)支持代理服务器:对安全强度很高的系统而言,一般不会将自己的系统直接暴

Mysql导入导出工具Mysqldump和Source命令用法详解

mysqldump -u 用户名 -p [--opt] DATABASENAME [Table] >导出SQL文件名 例子: mysqldump -h host -u user -p --opt databasename [table] > /home/user/databasename.sql 使用Mysqldump导出数据表结构 mysqldump -u root -p --no-data mysql user >D:\PHPWeb\sqlbackup\mysql_user.sql

揭秘SFTP&&SCP命令 Linux详解

很多童鞋对于如果在字符终端进行上传下载以及复制的命令不熟悉,那么下面我就来说一下如何通过sftp以及scp命令进行上传下载以及复制文件的操作. 先来看一下sftp命令: 举例说明:现在我有两台虚拟机,分别是192.168.1.118和192.168.1.121,假设121的主机是远程服务器,且服务器上有一个user2的用户.此时,你想将118上的/etc/passwd文件上传到user2的主目录下,并将user2的.bashrc文件复制到118主机的/tmp目录下. 上传命令是put,下载命令是