文本编辑器 vim gvim(图形模式)
2015.10.31
1. 命令模式
vi shenchao.message新建shenchao.message文本文件,并进入命令模式
命令模式执行命令进入插入模式,
插入模式按 Esc返回命令模式
按:进入编辑模式的命令执行
插入命令
这些命令都是回到命令模式在执行下列命令
a 在光标所在字符后插入
A 在光标所在行尾插入
i 在光标所在字符前插入
I 在光标所在行首插入
0 在光标下插入新行
O 在光标上插入新行
定位命令
在命令模式下 :set nu 设置行号
:set nonu 取消行号
gg 到第一行
G 到最后一行
nG 到第n行
:n 到第n行
0 移至行首
$ 移动行尾
删除命令
x 删除光标所在处字符
nx 删除光标所在处后n个字符
dd 删除光标所在行 ndd删除n行
dG 删除光标所在行至文件末尾内容
D 删除光标所在处至行尾内容
:n1,n2d 删除指定范围内的行
复制和剪切命令
yy 复制当前行
nyy 复制当前行以下n行
dd 剪切当前行
ndd 剪切当前行以下n行
p、P 粘贴在当前光标所在行下、行上
替换和取消
r 替换光标所在处的字符
R 从光标所在处开始替换字符 按Esc结束
u 取消上一步操作
搜索和搜索替换
/string 搜索指定字符串 \
搜索时忽略大小写 :ic
n 下一个搜索到的字符串出现位置
:%s/old/new /g 全文替换指定字符串
g换为c时 每次替换都会询问是否
:n1,n2s/old/new/g 在一定范围内替换指定字符串
保存和退出
:w 保存修改
:w new_filename 另存为指定文件
:wq 保存修改并退出
ZZ 快捷键,保存修改并退出
:q! 不保存修改退出
:wq! 保存修改并退出(文件所有者及root可使用)
vim 小技巧
2015.11.1
1. 导入命令 r: /etc/issue 直接将文件issue中内容导入到现在正在执行的vi的文件中光标所在的位置
:! which ls 在不退出vi的情况下执行命令
:r !date 直接导入命令的执行结果
2. 设置快捷键 可自定义快捷方式
map ^B I#<ESC> (按住Ctrl+v+p 或者先按Ctrl+v再按Ctrl+p)
即Ctrl+p 表示在行首插入#并且返回到命令模式(不管光标在什么地方)
:map ^B 0x 跳到行首并删除首字符
:map ^H Ixiaozhang@163.com.cn<ESC> 插入邮箱并退回到命令模式
3. 添加注释,替换等
:11,14s/^/#/g 在11到14行的行首插入#,如果把g改为c则要询问是否
:10,12s/^#/\/\//g 将行首的#替换为 //
\表示转义字符
^表示行首
4. ab 表示将a替换为b
:mymail xiaozhang@163.com 当在编辑模式下输入mymail后按空格或者回车mymail就会变为xiaopzhang@163.com
5. 用户的命令配置文件 .vimrc
管理员 /root/.vimrc
用户 /home/username/.vimrc
可以将命令写到配置文件中
如在.vimrc中添加 set nu
ab mymail xiaozhang@163.com
再次打开vi的时候就会默认显示行号,输入mymail的时候就会变成xiaozhang@163.com