一、vim编辑器简介
vim 是一个全屏幕纯文本编辑器,是 vi 编辑器的增强版,我们主要讲解的是 vim 编辑器。
二、基本使用
1、vim 的工作模式
命令模式:是主要使用快捷键的模式,命令模式想要进入输入模式,可以使用以下的方式:
输入模式:主要用于文本编辑,和记事本类似,输入数据就好
底线命令模式
:w 保存不退出 :w(大写) + 新文件名 把文件另存为新文件 :q 不保存退出 :wq 保存退出 :! 强制 :q! 强制不保存退出,用于修改文件之后,不保存数据退出。 :wq! 强制保存退出,当文件的所有者或者 root 用户,对文件没有写权限的时候,强制写入数据使用。
2、命令模式操作
2.1移动光标
1)上下左右移动光标 上下左右移动光标 上、下、左、右方向键,或者 H、j、k、l 2)把光标移动到文件头或尾 gg 移动到文件头 G 移动到文件尾(shift+g) 3移动到行首或行尾) 0 移动到行首 $ 移动到行尾 4)移动到指定行 :n 移动到第几行 #这里 n 是数字,准备移动到第几行,就用哪个数字。 ```
2.2 删除或剪切
1)删除字母 x 删除单个字母 nx 删除n个字母 2)删除整行或剪切 dd 删除单行 ndd 删除多行 :n1,n2d 删除指定范围的行 #删除整行或多行,这是比较常用的删除方法。这里的 dd 快捷键既是删除,也是剪切。删除内容 放入了剪切板,如果不粘贴就是删除,如果粘贴就是剪切。 3) 粘贴 p 粘贴到光标后 P(大) 粘贴到光标前 4)从光标所在行删除到文件尾 dG 从光标所在行删除到文件尾 #“d”是删除行,“G”是文件尾,连起来就是从光标所在行删除到文件尾。
2.3 复制
yy 复制单行 nyy 复制多行 #复制之后的粘贴,依然可以使用 p 键或 P(大)键
2.4 撤销
u 撤销 ctrl+r 反撤销 #“u”键能一直撤销到文件打开时的状态,类似 Windows 下“ctrl+z”键的作用。 #“ctrl+r”能一直反撤销到最后一次操作状态,类似 Windows 下“ctrl+y”键的作用。
2.5 替换
r 替换光标所在处的字符 R 从光标所在处开始替换字符,按ESC结束 “r”键替换单一字符,不用进入输入模式,实际使用时,比进入输入模式删除后再修改,要方便。
2.6 vim 配置文件
vim 支持更多的设置参数,可以通过“:set all”进行查看。设置参数都只是临时生效,一旦关闭文件再打开,又需要重新输入。如果想要永久生效,需要手工建立 vim 的配置文件“~/.vimrc”,把你需要的参数写入配置文件就永久生效了。
例如 新建配置文件 vim .vimrc,写入配置,则以后打开文件会显示行号
2.7 查找
/查找内容 从光标所在行向下查找 ?查找内容 从光标所在行向上搜索 n 下一个 N 上一个
2.8 替换
:1,10s/old/new/g 替换 1 到 10 行的所有 old 为 new :%s/old/new/g 替换整个文件的 old 为 new 替换字符串 :1,10s/^/#/g 注释 1 到 10 行 #不同语言注释不一样。 :1,10s/^#//g 取消注释 :1,10s/^/\/\//g 1 到 10 行,行首加入// #因为/在vim命令中有特殊含义,所以要用反斜杠\进行转义 :1,10s/^\/\///g 取消 1 到 10 行行首的//
三、vim 使用技巧
1.在 vim 中导入其他文件内容或命令结果
1.1 导入其他文件内容
:r 文件名 把文件内容导入光标位置 可以把其他文件的内容导入到光标所在位置
1.2 在 vim 中执行系统命令
:!命令 在 vim 中执行系统命令 这里只是在 vim 中执行系统命令,但并不把系统命令的结果写入到文件中。
1.3 导入命令结果
:r !命令 在 vim 中执行系统命令,并把命令结果导入光标所在行 在 vim 中执行系统命令,并把命令结果导入光标所在行
2.设定快捷键
:map 快捷键 快捷键执行的命令 自定义快捷键 vim 允许自定义快捷键,常用的自定义快捷键如下: :map ^_ I#<ESC> 按“ctrl+/”时,在行首加入注释 :map ^B x 按“ctrl+b”时,删除光标字母(删除注释) 注意:^B 快捷键不能手工输入,需要执行 ctrl+V+B 来定义,或 ctrl+V ,然后 ctrl+B。
3.字符替换
:ab 源字符 替换为字符 在 vim 编辑中,有时候需要频繁输入某一个长字符串(比如邮箱),这时使用字符串替换,能增 加输入效率,例如: :ab 123@163.com 当碰到“mymail”时,转变为邮箱
4.多文件打开
在 vim 中可以同时打开两个文件,只要执行如下命令:
[root@localhost ~]# vim -o abc bcd [root@localhost ~]# vim -O abc bcd #-o 小写 o 会上下分屏打开两个文件 #-O 大写 O 会左右分屏打开两个文件 这样可以同时打开两个文件,方便操作。 如果是“-o”上下打开两个文件,可以通过先按“ctrl+w”, 再按“上下箭头”的方式在两个文件之间切换。 如果是“-O”左右打开两个文件,可以通过先按“ctrl+w”,再按“左右箭头”的方式在两个文 件之间切换。