vi编辑器
vi编辑器是所有Unix及Linux系统下标准的编辑器,他就相当于windows系统中的记事本一样,它的强大不逊色于任何最新的文本编辑器。
vi编辑器有三种模式,命令模式,命令行模式,编辑模式
命令模式,可以使用简单的命令进行文本内容的操作。
命令行模式,可以使用复杂点的命令进行文本内容操作。
编辑模式,可以直接编辑文本内容。
命令模式
可以通过下面两个个命令进入命令模式
输入vi命令或者vim命令打开a.txt文件时,就是命令模式,如下:
vi a.txt
vim a.txt
命令模式下常用命令有如下:
命令 | 作用 |
---|---|
x | 删除一个字符 |
dw | 删除一个单词 |
ndw | 删除光标之后n个单词 |
dd | 删除一行,光标所在行 |
ndd | 删除n行 |
r | 替换一个字符 |
cw | 先删除单词,再进入编辑模式 |
cc | 删除当前行,并进入编辑模式 |
C | 大写C(shift+~),删除光标所在位置到当前行的末尾,然后进入编辑模式 |
E | 将当前光标移动到下一个字尾 |
yy | 复制当前行 |
yw | 复制一个单词 |
p | 粘贴复制的内容 |
~ | shift+~,把字符进行大小写转换 |
J | shift+j,把当前行和下一行进行连接 |
u | 撤销之前的操作 |
G | shift+g,将光标定位到文件末尾 |
nG | 将光标定位到文件第n行,这里n代表的是行号 |
/单词 | 查找指定单词的位置,然后使用n可以定位到下一个匹配的地方,从上往下找 |
?单词 | 查找指定单词的位置,然后使用n可以定位到下一个匹配的地方,从下往上查找 |
w | 把光标移至下一个字的字首 |
b | 把光标移至上一个字的字首 |
h | 光标左移 |
l | 光标右移 |
j | 光标下移 |
k | 光标上移 |
命令行模式
输入冒号“:”进入命令行模式
命令行模式常用命令如下:
命令 | 作用 |
---|---|
:2,4d | 删除第2行到第4行 |
:2,4co5 | 拷贝第2行到第4行之间的内容到第5行后面 |
:1,2m7 | 移动第1行到第2行之间的内容到第7行后面 |
:w | 保存 |
:w newfile | 保存为另一个新文件,相当于另存为功能 |
:q | 退出 |
:q! | 强制退出 |
:wq! | 保存并强制退出 |
:set nu | 显示行号,set nonu 是取消行号 |
:n | 将光标定位到第n行 |
:r b.txt | 将b.txt文件内容插入到当前文件中 |
:1,$s/hello/test/g | 将文件从1行开始,所有的单词hello替换成test |
set autoindent | 设置自动对齐 |
set tabstop=2 | tab缩进两个空格 |
suntax on | 设置语法高亮 |
set confirm | 在保存时弹出确认 |
set clipboard+=unnamed | 与windows共享剪贴板 |
set mouse=a //set selection=exclusive// set selectmode=mouse,key | 使用这三个命令,启用鼠标 |
如果要从命令行模式退出到命令模式,则需要按esc键
编辑模式
编辑模式就和在文本文件上编辑一样。。。
从命令模式进入到编辑模式可以输入下面的命令
(1)i 命令表示在光标当前位置处插入,并变为编辑模式。
(2)a 命令表示在光标所在位置后插入,并变为编辑模式
(3)o 命令表示在光标所在行的下方插入空行,并变为编辑模式
补充
spf13分布的安装
介绍:
这是一个完全跨平台的发行版,既保持了vim的感觉,又提供了插件管理系统、自动完成、标签等现代功能
配置:
(1)更新资源apt-get update
(2)安装gitapt install git
(3)执行安装命令curl https://j.mp/spf13-vim3 -L > spf13-vim.sh && sh spf13-vim.sh
(4)如果安装失败,那么使用下面两个命令
apt update
,apt upgrade
给系统包升级,再重新执行安装命令
这个安装的非常慢,因为需要从git服务器下载插件,所以插件经常安装失败
vim分屏
命令行模式下进行如下命令操作
命令 | 作用 |
---|---|
:split | 横向分屏 |
:vsplit | 纵向分屏 |
:open | 在当前分屏中打开i指定文件或者目录 |
ctrl + ww | 在不同的分屏中切换光标 |
:close | 关闭当前分屏 |
:only | 关闭除光标所在窗口之外的其他窗口 |
:vs | 纵向分屏打开另一个文件 |
:sp | 横向分屏打开另一个文件ctrl+z挂起文件时,文件一直在后台处于编辑状态 |