关于VIM
VIM是VI的improve版本
1/增强了多级撤销
2/减少了崩溃次数,崩溃后也能还原.
3/
VIM官网
vim官网中有很多信息
包括一些推荐的学习文档
VI在文件系统中
linux@ubuntu:~/project/tmp/linux-0.11$ which vi
/usr/bin/vi
linux@ubuntu:~/project/tmp/linux-0.11$ ll /usr/bin/vi
lrwxrwxrwx 1 root root 20 6月 25 2015 /usr/bin/vi -> /etc/alternatives/vi*
linux@ubuntu:~/project/tmp/linux-0.11$ ll /etc/alternatives/vi
lrwxrwxrwx 1 root root 18 6月 25 2015 /etc/alternatives/vi -> /usr/bin/vim.basic*
linux@ubuntu:~/project/tmp/linux-0.11$ file /usr/bin/vim.basic
/usr/bin/vim.basic: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=0xee9dbd50d0201cf3bbe8fb2fde6efbacb6f2cded, stripped
0/VI帮助
vi -h
usage: vim [arguments] [file ..] edit specified file(s)
or: vim [arguments] - read text from stdin
or: vim [arguments] -t tag edit file where tag is defined
or: vim [arguments] -q [errorfile] edit file with first error
man vi
info vi
1/打开文件
vi filename
vi filename +12
vi filename1 filename2 -O
vi filename1 filename2 -p
vi -b filename //%!xxd //%!xxd -g 1
vi -r filename
2/VI模式
普通模式
默认进入普通模式,由其他模式进入普通模式,按Esc
插入模式
aios AIOS cc
命令行模式
:
可视化模式
v
替换模式
r R
vim 一共有六种模式:
普通模式(Normal mode):也叫命令模式,是 vim 的默认模式。在这个模式下,用户可以使用快捷键执行各种操作。
插入模式(Insert mode):在这个模式下,用户可以输入文本。
可视模式(Visual mode):在这个模式下,用户可以选择文本块进行操作。
选择模式(Select mode):与可视模式类似,但是在这个模式下选择的文本会被自动复制到系统剪贴板中。
命令行模式(Command-line mode):也叫底行模式(ex mode),在这个模式下,用户可以执行一些高级的操作,例如搜索、替换、保存文件等。
操作符等待模式(Operator-pending mode):在这个模式下,用户可以等待一个操作符的输入,例如 d(删除)、y(复制)等。
常用操作
功能 | 实现方式1 | 实现方式2 | 实现方式3 | 实现方式4 | |
---|---|---|---|---|---|
查找 | # * | ?word | /word | /word1|word2 | |
替换 | 当前行1,s/before/after/g | 全部1,$s/printf/hahah/g | 局部m,ns/printf/hahah/g | ||
定位光标 | 行首 0/^ 行末 $ | 字符 fc/; | 块(){} [[ ]] | 4gg 4G :4 | |
拉屏幕 | 全屏 ctrl + f ctrl + b | 半屏ctrl + u ctrl + d | |||
调整光标 | zz zt zb | ||||
标记 | 设置标记 ma mb mc | 跳转标记 a b `c | |||
退出 | ZZ x | w! sudo tee % | q q! wq wqa | ||
通配符查找 | /char\s+[A-Za-z_]\w*; | /\d\d:\d\d:\d\d | :g/^\s*$/d | 😒/<four>/4/g | |
统计次数 | %s/str1/&/gn |