9月28日任务
5.1 vim介绍
5.2 vim颜色显示和移动光标
5.3 vim一般模式下移动光标
5.4 vim一般模式下复制、剪切和粘贴
9月29日任务
5.5 进入编辑模式
5.6 vim命令模式
5.7 vim实践
vim介绍
vim是vi的增强版本,多了些功能,比如vim带有颜色显示。vim打开不同目录的相同文件可能配色不同,内容一样、文件名不一样也可能颜色不同,这是在/etc/vimrc或~/.vimrc两个配置文件中设置的。
终端中输入vim和文件名即可进入文件进行编辑。如果提示找不到vim可能是还没有安装,终端中输入yum install -y vim-enhanced
。在知道使用命令但不知道软件包具体名字时,可以用yum provides /*/vim
来查找,这里不清楚vim的包名,所以用其调用命令vim。
vim使用
vim分三种模式,一般模式,编辑模式,命令模式。一般模式可以进行复制粘贴等非输入性编辑,编辑模式就是利用键盘进行文本输入,命令模式可以文本替换、查找、打开文件等多种操作。
一般模式
方向键jkhl分别控制上下左右,也可以在前面加上数字进行跳跃。ctrl+f、ctrl+b分别是向下和向上翻页。^、$分别是跳到行首、行尾,gg是跳转到首行、G是跳转到尾行,nG是向下跳转n行。
dd剪切,ndd多行剪切。x向后剪切一个字符,X向前剪切一个字符,可以像dd一样前面加n,代表剪切n个字符。yy复制。v可视,可以移动光标进行选择,然后yy复制或者x剪切。p在下一行粘贴,P在上一行粘贴。u恢复上次、最多50次,ctrl+r反向恢复。
编辑模式
几种进入编辑模式的方法:aioAIO,a是在光标后一个字符插入(after),i是在光标前一个字符插入(insert),o是在光标所在行之下插入一空白行。a是在光标所在行行尾插入(after),i是在光标所在行行首插入(insert),o是在光标所在行之上插入一空白行。
退出编辑模式按esc键。
命令模式
:q
退出,:q!
强制退出
:wq
保存退出,:q!
强制保存退出
:x
保存退出,如果没有修改内容则不会更改文件mtime。:wq
则会修改。
set nu
显示行号,set nonu
不显示行号
nohl
取消高亮
/abc
向下查找abc字符串,按n移动光标到下一个abc。?/abc
向上查找abc
:1,100s/abc/def/g
替换1到100行全部的abc为def。如果不加g则只替换每行第一个abc。全文替换的话使用1,$s/abc/def/g
。斜杠可以改为#或者@,这在替换内容有斜杠时使用。