【Linux】VIM使用

本文详细介绍了Vim编辑器的三种工作模式,包括命令模式、插入模式和编辑模式,展示了丰富的文本操作技巧,如行号设置、搜索替换、快捷键映射等。此外,还分享了如何利用r!命令导入外部命令结果,以及如何在不同用户目录下设置永久生效的快捷键。
摘要由CSDN通过智能技术生成

第一节 Vim常用操作


Vim没有菜单,只有命令。Vim的工作模式有三种:

第一种:命令模式 vi/vim+文件名 进入命令模式 不可以输入文字,只能识别命令
插入命令:
a:在光标所在字符后插入
i:在光标所在字符前插入
o:在光标下插入新行
A:在光标所在行尾插入
I:在光标所在行行首插入
O:在光标上插入新行
第二种:插入模式 按i/a/o进入,可以继续输入文字,按Esc退出
第三种:编辑模式 在命令模式下按:,即可进入 编辑模式 可以输入编辑命令 比如:保存并退出,加行号
定位命令:
:set nu 设置行号
:set nonu 取消行号
gg 到第一行
G 到最后一行
nG 到第n行
: n 到第n行 和上面一样的格式
$ 移动到行尾
0 移动到行首
删除命令:
x 删除光标所在处的字符
nx 删除光标所在处后n个字符
nd 删除光标所在行
ndd 删除n行
dG 删除光标所在行到文件末尾的内容
D 删除光标所在处到行尾内容
:n1,n2d 删除指定范围的行 n1-n2的行全部被删除
复制和剪切命令:
yy 复制当前行
nyy 复制当前行一下n行
dd 剪切当前行
ndd 剪切当前行以下n行
p 粘贴在当前光标所在行下
P 粘贴在当前光标所在行上
替换或取消命令:
r 替换光标所在处字符
R 从光标所在处开始替换字符,按Esc结束
u 取消上一不操作
搜索和搜索替换命令:
/string 搜索指定字符串string 与less命令操作类似
搜索时忽略大小写:set ic
搜索时不忽略大小写:set noic
n 搜索指定字符串的下一个出现位置
:%s/要替换的字符串/替换的新的字符串/g 不询问
把/g换成/c 进行询问确认
全文替换指定字符串
:n1,n2s/要替换的字符串/替换的新的字符串/g
在一定范围内替换指定字符串
保存和退出命令:
:w 保存修改
:w new_filename 另存为指定文件
:wq 保存修改并退出
ZZ 快捷键,保存修改退出
:q! 不保存修改退出
:wq! 保存修改并退出(只有文件所有者以及root可以使用)适合保存root只有只读权限的文件
第二节 Vim使用技巧
在Vim中有许多黑科技小技巧便于我们操作,我总结了以下几天最为方便的操作,以供大家学习:

:r !命令 当前的Vim文档导入命令执行结果
例子:
:r !date 直接把当前时间导入当前的Vim文档
map [快捷键] [触发命令] 定义快捷键
其中快捷键需要按ctrl+v+需要设定的键位,设定好之后颜色会变,比如想设定ctrl p为快捷键那么就按ctrl+v+p 会出现^P ,不能按shift+6出现的^,这两个虽然看起来一样但是颜色不一样
触发命令按需要执行的命令的先后顺序来排列,比如给脚本加注释#键就可以把[触发命令]设为I#
例子:
map ^P I# 给脚本行首加#注释
:n1,n2s/^/#/g 替换行首字符为#,连续行的注释,不过需先设置行号 :set nu
:n1,n2s/^#/ /g 取消注释
:n1,n2s/^/ \ / \ //g 给行首加// 需先设置行号 :set nu
因为系统无法识别太多的,所以需要在//每一条/前都加转义符\,\表达命令的正在含义,比如ls /etc 里面的文件会有颜色,但是\ls 就没有,他是表达执行ls真正含义不执行ls别名
ab [a内容][b内容]
例子:
ab mymail 1771566679@qq.com
替换命令,当你在vim文档中输入mymail时按回车或者空格会自动变1771566679@qq.com
即:会自动把b内容替换成a
非常实用的小技巧
有些时候在重启服务器之后,定义的快捷键会消失,这时候我们需要在用户的家目录下写配置文件,保存快捷键
root用户在 /root/.vimrc
其他用户在 /home/username/.vimrc在里面进行编辑,永久生效

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

惜缘若水

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值