Linux vi/vim

所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在。但是目前我们使用比较多的是 vim 编辑器。vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计。

vim -b 打开二进制
      -d 打开两个文件对比
      -m 只读方式打开

vim filename命令模式,一次移动一个光标:

h:左
l:右
j:下
k:上

行内移动:

0:至行首
d0 或 d^:删除至行首
$:至行尾
d$:删除至行尾

有小d 大D 都是剪切:

dd: 剪掉当前行
5dd:剪掉当前行起共5行
D:  剪空当前行
x:  删除一个字母
dw: 剪除一个单词
2,5d 删除2到5行的数据
.     点是当前行 ;  2,.d  第二行到当前行全部删除
.,$d 删除当前行到最后一行
.,$-1 删除当前行到最后倒数第二行
%   全文,相当于 1,$
g/^$/d 删除全部空行

撤销、复制:

u:一次撤销一行中的一个动作
U:撤销一行中的所有动作
yy: 复制当前行
5yy:复制5行
p:  粘贴

大小写:

guG:全部大写转化为小写,gu把选定范围全部小写,G到文件结束
gUG:全部小写转化为大写,gU把选定范围全部大写,G到文件结束

0gu$:将单行大写转化为小写
0gU$:将单行小写转化为大写

 

输入模式:

o:在光标下加一个空行并进入插入模式
O:在光标上加一个空行并进入插入模式
r:替换一个字符
R:连续替换多个字符
I:直接跳到行首进入插入模式
A:直接跳到行尾进入插入模式
H:跳到当前页的行首
L:跳到当前页的行尾
M:跳到当前页的中间

文件内容查找:

/word  从上而下在文件中查找字符串"word"
?word  从下而上在文件中查找字符串"word"
n 定位下一个匹配的字符串
N 定位上一个匹配的字符串

多行注释:

vim filename -> contrl v -> I > # -> esc (两次)

多行缩进:

shift +v 左右键

shift < 或 >

末行模式:

:set ignorecase 忽略大小写
:set noignorecase  不忽略大小写
:set nu 或 :set number  显示行号
:set nonu 或 :set nonumber  不显示行号
:999  移动光标至999行

vim 多文件模式

next:下一个
prev:上一个
first:第一个
last:最后一个
wall:保存所有
qall:退出所有
wqall

有彩色或无彩色

:syntax clear或:set syntax=off暂时关闭语法高亮
:syntax enable    当前缓冲区打开语法高亮功能
:nohl  取消高亮

保存、退出模式:

:w:保存不退出
:w!:暴力保存不退出
ZZ:保存退出
ZQ:不保存退出
:w file:另存为file文件
:r file  读入一个新文件

文件内容替换:

:s/old/new  当前行中找到第一个old,替换为new
:s/old/new/g  当前行中找到的所有old,替换为new
:%s/old/new/g  整个文件所有old,替换为new
:s/old/new/c  c命令:对每个替换动作进行确认
:#,# s/old/new/g 行号"#,#" 范围内替换所有的old为new

文件加密和解密:

:X 根据提示操作加密
:set key=    解密

vim 查看历史操作:

q:  查看命令行历史,q后面带分号
:history  查看历史操作
:!  在vim操作界面执行其他命令
:r! 将其他命令输出读入到vim界面

非正常关闭解决:

rm .install.log 
原文地址:https://www.cnblogs.com/hankyoon/p/13898033.html