3.文本编辑器vim
早期版本叫vi
建立,编辑,显示文件文件
没有菜单,只有命令
3.1.vim常用操作
vim安装
yum install vim
vim工作模式:
上传不了图片,可以参考这里,挺详细的:
http://www.runoob.com/linux/linux-vim.html
新建一个文件:
vim test.log
编辑模式下:
设置行号set nu
取消行号 set nonu
插入命令:
命令 |
作用 |
a |
在光标所在字符后插入 |
A |
在光标所在行尾插入 |
i |
在光标所在字符前插入 |
I |
在光标所在行首插入 |
o |
在光标下插入新行 |
O |
在光标上插入新行 |
定位命令:
命令 |
作用 |
:set nu |
设置行号 |
:set nonu |
取消行号 |
gg |
到第一地 |
G |
到最后一行 |
nG |
到第n行 |
:n |
到第n行 |
$ |
移至行尾 |
0 |
移至行首 |
删除命令:
命令 |
作用 |
x |
删除光标所在处字符 |
nx |
删除光标所在处后n个字符 |
dd |
删除光标所在行 |
ndd |
删除光标所在行及后面删除n行 |
dG |
删除光标所在行到文件末尾内容 |
D |
删除光标所在处到行尾的内容 |
:n1,d2d |
删除指定范围的行,例如:删除10行到23行:10,12d |
复制和剪切命令:
命令 |
作用 |
yy |
复制当前行 |
nyy |
复制当前行以下n行 |
dd |
剪切当前行 |
ndd |
剪切当前以下n行 |
小写p |
粘贴在当前光标所在行下 |
大写P |
粘贴在当前光标所在行上 |
替换和取消命令:
命令 |
作用 |
r |
取代光标所在处字符,按ESC结束 |
R |
从光标所在处开始替换字符,按ESC结束 |
u |
取消上一步操作 |
搜索和搜索替换命令:
命令 |
作用 |
/string |
搜索指定字符串 |
set ic |
搜索时忽略大小写 |
set noic |
搜索时区分大小写 |
n |
搜索时指定字符串的下一个出现位置 就是一个搜索项,类似于less的next |
:%s/old/new/g |
全文替换指定字符串 |
:n1,n2s/old/new/g |
在一定范围内替换指定的字符串 |
保存和退出命令:
命令 |
作用 |
:w |
保存修改 |
:w new_filename |
别存为指定文件 |
:wq |
保存修改并退出 |
ZZ |
快捷键,保存修改并退出 |
:q! |
不保存修改退出 |
:wq! |
保存修改并退出(文件所有者和root才可以使用) |
3.2.vim使用技巧
导入命令执行结果:r !命令
例如导入文件内容:
:r /tmp/test.txt
查看一下命令执行结果
:!which ls
导入命令执行结果:
:r !which ls
定义快捷键语法:
:map 快捷键 触发命令
例如:快捷键计划定义为Ctrl+p
则是如下操作:
:map Ctrl+v+p I#<ESC>
I#表示进行首行,在光标前插入#号
<ESC>表示退回命令模式
~
~
:map ^P I#<ESC>
连续行注释:
从某行到某行注释,实际上做的是之前的替换命令,将行首替换为#号。
:n1,n2s/^/#/g
去年注释:将行首的#号替换为空,注意行首表达式符号^
:n1,n2s/^#//g
自动替换:
:ab myblog wlcacc.iteye.com
当你输入myblog然后空格或者回车时,会自动替换博客地址
以上快捷键都是临时的,服务器重启就丢失了,如何持久化呢?
需要把快捷键保存到他的家目录的配置文件中。
root:/root/.vimrc
普通用户test:/home/test/.vimrc
只能放编辑模式的命令
set nu