vi/vim的使用方法和常用命令学习

目录

创建/打开文件

vi的三种模式

vi的常用命令


创建/打开文件

vi 文件名

打开一个文件,如果文件不存在,就创建它

vi test.c

回车后进入vi界面如下

vi的三种模式

vi有三种模式:命令行模式、插入模式和替换模式

命令行模式下,任何键盘输入都是命令

vi初始化是命令行模式

插入模式和替换模式下,键盘输入的才是字符

插入模式和替换模式合称编辑模式

i键进入插入模式(底部有提示--INSERT--)

Esc键返回命令行模式(底部没有提示)

R键进入替换模式(底部有提示—REPLACE--)

vi的常用命令

Esc      从编辑模式切换到命令行模式

按i键进入插入命令,输入My World

在vi命令行模式下,光标移动到字母r上

i    在光标所在位置前面开始插入

按i键后,进入插入模式,输入ccc,在光标前插入

a    在光标所在的位置后面开始插入

按Esc键返回命令行模式,光标前移一个字符

再按a键,光标退回原位置,输入bbb,在光标前插入

按Esc键返回命令行模式

o   在光标所在位置下一行插入空白行,光标移动到下一行

注意是小写字母o不是0

同上,返回命令行模式,将光标向上移动到M

O   在光标所在位置上一行插入空白行,光标移动到上一行

注意是大写字母O不是0

先返回命令行模式,将光标移动到第一个字符b

I    在光标所在位置行的行首开始插入

返回命令行模式

A   在光标所在位置行的行末开始插入

返回命令行模式

k    类似方向键上

j    类似方向键下

h   类似方向键左

l    类似方向键右

切换到root用户主目录下

Ctrl+d  向下翻半页

Ctrl+u  向上翻半页

Ctrl+g      显示光标所在位置的行号和文件的总行数

nG 光标跳到文件的第n行行首(如我按10G,再按Ctrl+g显示下)

G   光标跳到文件最后一行(同上按Ctrl+g显示)

:n回车   光标跳到第n行

如:5回车   光标跳到第5行(同上按Ctrl+g显示)

先将光标移动到第8行中间

0        光标跳到当前行的行首

$    光标跳到当前行的行尾

w    光标跳到下个单词的开头

b    光标跳到上个单词的开头

e   光标跳到本单词的尾部

x     每按一次,删除光标所在位置的一个字符

u   撤销命令,可多次撤销

将光标移动到onboot的o上

nx   如"6x"表示删除光标所在位置开始的6个字符(只针对光标所在行)

按u键恢复

将光标移动到onboot的n上

dw  删除光标所在位置到本单词结尾的字符

按u恢复

D   删除本行光标所在位置后面全部的内容

dd   删除光标所在位置的一行

ndd  如"2dd"表示删除光标所在位置开始的2行

按多次u恢复到未修改状态

先按:88回车跳到文件的第88行,按Ctrl+g显示

yy   将光标所在位置的一行复制到缓冲区(无提示)

p    将缓冲区里的内容粘贴到光标所在位置

nyy 将光标所在位置的n行复制到缓冲区(如3yy)

 

r      替换光标所在位置的一个字符 replace 

 

R      从光标所在位置开始替换,底部出现提示—REPLACE

直到按下"Esc",回到命令行模式

将光标移动到单词sbin的开头s处

cw 从光标所在位置开始替换单词,光标处sbin单词删除底部提示—INSERT—

输入fghj,按Esc键退出单词替换

J   把当前行的下一行接到当前行的尾部

连按u,直到恢复到初始状态,提示Already at oldest change

/mc  在当前文件中查找“mc”文本内容

光标自动从当前行跳到下边第一次出现mc的位置

n      查找下一个

N      查找上一个

.    重复执行上一次执行的vi命令(结合其他命令,奇妙无穷)

将光标移动到字符u

~   对光标当前所在的位置的字符进行大小写转换

列操作(若vi操作没反应,可能是版本问题,执行命令yum –y install vim*)

若yum命令执行不了,参考如下链接:

Centos 6无法使用yum的解决方法_提示Error: Cannot find a valid baseurl for repo: base – 主机之家测评 (liuzhanwu.cn)

(2条消息) CentOS yum 安装时错误 Errno 14 Couldn't resolve host 解决办法_weixin_30526593的博客-CSDN博客

(1)Ctrl+V   有提示—VISUAL BLOCK--

(2)光标上或下

(3)大写的I  提示—INSERT--

(4)输入内容  如ccc

(5)Esc  稍等一下

:w回车    存盘

:q回车  不存盘退出

:q!回车  不存盘强制退出(当q无法退出时使用)

查看下cat test.c

:w!回车   强制存盘(当w无法存盘时使用),注意保存别按Ctrl+s

:wq回车     存盘退出

查看修改cat test.c

:x回车    存盘退出等价于wq,但特别注意别按成了X

:X回车      为当前文件设置密码

输入则设置密码

如123

:wq退出,下次vi test.c时需输入密码123,如下

若密码输入错误,则显示乱码

两次回车即不设密码

:set key=回车     清除文件密码

:wq回车保存后退出,再次vi test.c无需密码就可以进入

:g/ccc/s//bbb/g回车   

把文件中全部的ccc替换成bbb

替换前

替换后

Ctrl+s       终止屏幕输出(即停止回显),你敲的依然有效,但看不见

(联想:像不像在Linux系统终端输入密码的感觉)

Ctrl+q       恢复屏幕输出,你刚敲的都将显示

Ctrl+insert  复制文本,相当于Ctrl+c

Shift+insert  粘贴文本,相当于Ctrl+v

以上两个命令在windows和UNIX中是通用的

Linux系统下也可以使用Ctrl+shift+c复制,Ctrl+shift+v粘贴

vi中文显示乱码参考:vi显示中文乱码 - dongtshj - 博客园 (cnblogs.com)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值