vim编辑器

萱蘇的运维日常 2024-03-28 13:31:10
vim是一个全屏幕纯文本编辑器,是vi编辑器的增强版,我们主要讲解的是vim编辑器。

vim基本工作模式

命令模式:是主要使用快捷键的模式

命令含义a在光标所在字符后插入A在光标所在行尾插入i在光标所在字符前插入I在光标所在行行首插入o在光标下插入新行O在光标上插入新行

输入模式:主要用于文本编辑,和记事本类似,输入数据就好

末行模式(编辑模式):

:w 保存不退出

:w 新文件名 把文件另存为新文件

:q 不保存退出

:wq 保存退出

:!强制

:q! 强制不保存退出,用于修改文件之后,不保存数据退出。

:wq!强制保存退出,当文件的所有者或者root用户,对文件没有写权限的时候,强制写入数据使用。

命令模式的操作移动光标

上下左右移动光标

上(H)、下(J)、左(K)、右(L)方向键 移动光标

把光标移动到文件头或尾

gg 移动到文件头

G 移动到文件尾(shift+g)

移动到行首或行尾

^ 移动到行首

$ 移动到行尾

移动到指定行

:n 移动到第n行

删除或剪切

删除字母

x 删除单个字母

nx 删除n个字母

删除整行或剪切

dd 删除单行

ndd 删除多行

:n1,n2d 删除指定范围的行

删除整行或多行,这是比较常用的删除方法。这里的dd快捷键既是删除,也是剪切。删除内容放入了剪切板,如果不粘贴就是删除,如果粘贴就是剪切。粘贴方法如下:

pp 粘贴到光标后

P粘贴到光标前

从光标所在行删除到文件尾

dG 从光标所在行删除到文件尾

"d”是删除行,"G”是文件尾,连起来就是从光标所在行删除到文件尾。如果把光标放在文件首,那么“dG”就变成了删除整篇文档了。

复制

yy 复制单行

nyy 复制多行

撤销

u 撤销

ctrl+r 反撤销

“u”键能一直撤销到文件打开时的状态,类似Windows下"ctrl+z”键的作用。

"ctrl+r”能一直反撤销到最后一次操作状态,类似Windows下"ctrl+y”键的作用。

替换

r 替换光标所在处的字符

R 从光标所在处开始替换字符,按ESC结束

:1,10s/old/new/g 替换1到10 行的所有old为new:%s/old/new/g 替换整个文件的old 为new替换字符串:1,10s//#/g注释1到10行:1,10s/#//g取消注释

vim 配置文件

这次末行模式参数设置,多数需要在vim中才能生效。

命令含义:set nu:set nonu显示与取消行号。:syntax on:syntax off是否依据语法显示相关的颜色帮助。在 Vim 中修改相关的配置文件或Shell 脚本文件时(如前面示例的脚本/etc/init.d/sshd),默认会显示相应的颜色,用来帮助排错。如果觉得颜色产生了干扰,则可以取消此设置:set hlsearch:set nohlsearch设置是否将查找的字符串高亮显示。默认是 set hlsearch 高亮显示:set ruler:set noruler设置是否显示右下角的状态栏。默认是 set ruler 显示:set showmode:set noshowmode设置是否在左下角显示如“—INSERT--”之类的状态栏。默认是 set showmode 显示:set list:set nolist设置是否显示隐藏字符(Tab 键用“^I”表示,回车符用“$”表示)。默认是 nolist 显示。如果使用 set list 显示隐藏字符,类似“cat –A 文件名”。

vim支持更多的设置参数,可以通过":set all”进行查看。如果想要永久生效,需要手工建立vim的配置文件“~/.vimrc”,把你需要的参数写入配置文件就永久生效了。

补充:Windows下回车符在Linux中是用“^M$”符号显示,而不是“$”符。这样会导致Windows下编辑的程序脚本,无法在Linux中执行。这时可以通过命令"dos2unix",把Windows格式转为Linux格式,当然反过来"unix2dos”命令就是把Linux格式转为Windows格式。这两个命令默认没有安装,需要手工安装才能使用。

查找/查找内容

/查找内容 从光标所在行向下

?查找内容 从光标所在行向上搜索

n 下一个

N 上一个

vim使用技巧在vim中导入其他文件内容或命令结果

导入其他文件内容

:r文件名 把文件内容导入光标位置

在vim中执行系统命令

:!命令  在vim中执行系统命令(只能查看命令执行结果)

:r!命令 在vim中执行系统命令,并把命令结果导入光标所在行

设定快捷键

:map快捷键快捷键执行的命令 自定义快捷键

vim允许自定义快捷键,常用的自定义快捷键如下:

:map ^P I#<ESC>按"ctrl+p”时,在行首加入注释,

:map ^B ^x按“ctrl+b”时,删除行首第一个字母(删除注释)

注意:“P快捷键不能手工输入,需要执行ctrl+V+P来定义,或ctrl+V,然后ctrl+P。B快捷17键也是一样。

字符替换

:ab 源字符 替换为字符 字符替换

在vim编辑中,有时候需要频繁输入某一个长字符串(比如邮箱),这时使用字符串替换,能增加输入效率,例如:

:ab mymail aaa当碰到"mymail”时,转变为邮箱注意:“源字符”不应设置的太短,否则有可能影响输入。

多文件打开

在vim中可以同时打开两个文件,只要执行如下命令:

#-o 小写o会上下分屏打开两个文件[root@aliyun ~]# vim -o abc bed#-O 大写O会左右分屏打开两个文件[root@aliyun ~]# vim -O abc bcd a1

这样可以同时打开两个文件,方便操作。如果是“-o”上下打开两个文件,可以通过先按"ctrl+w”,再按“上下箭头”的方式在两个文件之间切换。如果是“-O”左右打开两个文件,可以通过先按"ctrl+w”,再按“左右箭头”的方式在两个文件之间切换。

问题反馈

若对文中有任何的疑问,或者需要帮助可以通过以下方式进行反馈

直接进行评论或者单独私聊

发送邮件到:mr_xuansu@163.com

0 阅读:9