2015年(4)
分类: LINUX
2015-05-14 21:24:33
一、简介:文本编辑器 字处理器
vi Visual Interface
vim VI improved
全屏编辑器 模式化编辑器
二、
三种模式以及切换
:编辑(命令)模式、输入模式、末行模式
编辑模式-->输入模式:
i: 在当前光标所在字符的前面,转化为输入模式
a: 在当前所在光标所在行的后面,转化为输入模式
o: 在当前所在行的下方新建一行,转化为输入模式
I: 在当前光标所在行的行首,转化为输入模式
A: 在当前光标所在行的行尾,转化为输入模式
O: 在当前光标所在行的上方,新建一行,并转化为输入模式
输入模式-->编辑模式
ESC键
编辑模式-->末行模式
:
末行模式-->编辑模式
ESC,(ESC)
三、使用命令详解
1、
打开文件(创建文件)
2、
关闭文件
1.末行模式下关闭文件
:q 退出
:wq 保存退出
:q! 不保存并退出
:w 保存文件
:w! 强制保存
:x = wq 保存退出
2.编辑模式下退出
ZZ 保存并退出
3、移动光标
逐字符移动(?头也可)
h 左
l 右
k 上
j 下
还可以加上对应数字如 5h 9k等
以单词为单位移动
w 移至下一个单词的词首
e 跳至当前或下一个单词的词尾
b 跳至当前或上一个一个单词的词首
还可以与数字组合使用如 5w 移动到第五个词后
行内跳转
0(零) 绝对行首
^ 行首的第一个非空白字符
$ 绝对的行尾
行间跳转
#G 跳转至第#行
G 最后一行
末行模式下,直接给出行号即可
4、翻屏
ctrl + f 向下翻一屏
ctrl + b 向上翻一屏
ctrl + d 向下翻半屏
ctrl + u 向上翻半屏
5、删除单个字符
x 删除光标所在处的单个字符
#x 删除光标所在处的#个字符
6、删除命令:d
d命令跟跳转命令组合使用
#dw #de #db
末行模式下
startADD,endADDd
. 表示当前行
$ 最后一行
+# 向下的#行
7、粘贴命令p
p(小写) 如果删除或复制为整行内容,则粘贴至光标所在行的下方,如果复制或删除的内容为非整行,则粘贴至光标所在字符的后面
P(大写) 如果删除或复制为整行内容,则粘贴至光标所在行的上方,如果复制或删除的内容为非整行,则粘贴至光标所在字符的前面
8、复制命令y
用法同d
9、修改:先删除内容,再转换为输入模式
c 用法同d
10、 替换:r
R 进入替换模式
11、· 撤销编辑操作 u
u 撤销前一次的编辑操作
连续u命令 连续撤销,也可以#u
撤销最近一次ctrl + r
12、 重复前一次操作
.
13 可视化模式 :在视图化模式可以用鼠标选取
v 字符选取
V 矩形选取
14 查找
/PATTERN 正向查找
?PATTERN 反向查找
n next 查找下一个
N 查找上一个
15 查找并替换
在末行模式下使用s命令
ADDR1,Address2s@PATTERN@string@gi 和 sed ‘ADDs@@@'用法一样
1,$
% 表示全文
16 使用vim编辑多个文件
vim FILE1 FILE2 File3
默认打开第一个文件,
next 切换至下一个
prev 切换至上一个
last 切换至最后一个文件
first 切换至第一个文件
退出
qa 全部退出
17 分屏显示 一个文件
ctrl + w,arrow
qa 关闭所有窗口
18 分窗口编辑多个文件
vim -o 水平分屏显示
vim -O 垂直分屏显示
19 将当前文件中部分内容另存为另一个文件中
末行模式下使用w命令
:w file
:ADD1,ADD2w file
20 将另一个文件中的内容填充到当前文件中
:r somefile
21 跟shell 交互
:!COMMAND
22 高级话题
显示或取消显示行号
:set number
:set nu
:set nonu
显示忽略大小写
set ignorecase
set ic
set noic
设定自动缩进
:set autoindent
:set ai
:set noai
查找到的文本高亮显示
:set hlsearch
:set nohlsearch
:nohl
语法高亮
:syntax on
:syntax off
四 配置文件
/etc/vimrc
以及~/.vimrc