vim是大多数linux系统默认的文本编辑器。
vim编辑器三种状态
命令模式(输入vi)
输入模式(i、a、o末行有插入字样,ESC返回命令模式)
末行模式(输入:进入末行模式,在末行输入指令,ESC返回命令模式)
在用户目录下建立.vimrc的配置文件(编辑自己代码编写风格和设置)
:e file_name 打开文件file_name到vim编辑器
:e!file_name 打开文件file_name到vim编辑器,并放弃对当前文件的修改
:r file_name 读取文件file_name的内容到vim编辑器
:w 保存文件
:w new_filename 另存为指定文件名
1.vim编辑器的打开和退出
打开:
vim 文件名 已有则打开该文件,否则新建一个空白文件
退出:
:w 保存文件
:w new_filename 另存为指定文件名
:q 不保存文件退出
:q! 不保存,强制退出
:wq 保存文件退出(Shift键+z+z可以执行:wq)
:wq! 强制保存并退出(这个操作只有文件所有者以及root可使用)
2.定位
:set nu 给每一行编号
:set nonu 取消编号
:n 定位到第n行
3.光标移动操作
命令模式:方向键上下左右 数字+G
末行模式: 冒号+行号
4.编辑操作
插入:
i 在当前光标前插入
a 在当前光标后插入
o 在当前行的下面一行插入
O 在当前行的上面一行插入
删除:
x 删除当前光标所在处字符
nx 删除当前光标所在处后n个字符(n为数字)
dd 删除当前行,ndd删除n行----------------dd和ndd也是剪切,可以用p、P来粘贴
dG 删除光标所在行到文件末尾内容
D 删除光标所在处到行尾的内容
:n1,n2d 删除指定范围的行
yy 复制当前行
nyy 复制当前行以下n行
p 将缓存区的内容,粘贴在光标当前位置
v 可视选择
V 选取整行
Ctrl+v 可视块
u 取消最近一次操作,可以多次使用u命令
r 取代光标所在处字符(先按r,再按替换的字符)
R 从光标所在处开始替换字符,按Esc结束
5.搜索和替换操作
/string 搜索指定的字符串(string),如果想搜索时忽略大小写:set ic
不忽略大小写:setnoic
n 按n可以看到下一个string
:%s/old/new/g 全文替换指定字符串(若g换成c,会询问确认)
:n1,n2s/old/new/g 从n1行—n2行的范围内替换指定字符串
//查看二进制文件常用:xxd file_name
6.vim编辑文件加/解密
加密:
(1)使用命令行下的-x参数
(2)编辑模式下使用:X命令
解密:密码设置为空即可
7.导入命令
:r file_name 即可将文件file_name的内容导入到当前vim下的文本中
:r !date 也可以用:r !date等命令把时间或者项目的必须信息导入文件中
:vs file_name 可视(当前文件和vs打开的文件并排)
8.查找命令存放的位置
:!which order 即可得到命令存放的位置
9.定义快捷键
:map快捷键 触发命令
范例 :map ^P I#
:map^B 0x 或者先按Ctrl + v,再按Ctrl + p;否则颜色标识是不一样的)--表示要定义P快捷键
比如定义自己的邮箱:
:map^A [email protected]
10.连续行注释
:n1,n2s/^/#/g 恢复原来的,替换为空--:n1,n2s/^#//g
:n1,n2s/^#//g
:n1,n2s/^/\/\//g \为转义符
11.替换命令
:ab mymail [email protected]
使用ab命令了,如果想永久保存这样的命令,需要写在宿主目录下,例如root就在 vi /root.vimrc下
别的用户就在vi /home/user_name/.vimrc下,这是配置文件,把自己常用的命令编辑在这里面
12.在VIM中一起并排查看两个文件(竖直并排)
命令
:vsp filename
用ctrl+ww在两个文件之间切换
(Ps:我自己常用vsp查看,也有横排命令)
13.切换行首/行尾快捷键
行首:“0”(零)、“^”、Home键
行尾:“$”、End键
14.vim配置文件的几条简单配置
~/.ximrc用vim的配置文件
#vimrc配置文件访问,需要 .vimrc-------------隐藏文件
显示行号 setnu
设置tab的宽度为4个字符 set softtabstop=4
按C语言语法缩进源程序 set cindent
设置自动缩进的宽度 setshiftwidth=4
设置语法自动缩进 setautoindent