VIM最近使用常见指令总结
1 基本功
基本上 vi/vim 共分为三种模式,分别是命令模式(Command mode),输入模式(Insert mode)和底线命令模式(Last line mode)。
1.1 命令模式:
用户刚刚启动 vi/vim,便进入了命令模式。
此状态下敲击键盘动作会被Vim识别为命令,而非输入字符。比如我们此时按下i,并不会输入一个字符,i被当作了一个命令。
- i 切换到输入模式,以输入字符。
- x 删除当前光标所在处的字符。
- : 切换到底线命令模式,以在最底一行输入命令。
1.2 输入模式
在命令模式下按下i就进入了输入模式。输入状态就直接打字就可以,记住以下几个指令
- HOME/END,移动光标到行首/行尾
- Page Up/Page Down,上/下翻页
- Insert,切换光标为输入/替换模式,光标将变成竖线/下划线
- ESC,退出输入模式,切换到命令模式
记住写完了按下ESC就回到命令模式1.1中
1.3 底线命令模式
在命令模式下按下:(英文冒号)就进入了底线命令模式。底线命令模式可以输入单个或多个字符的命令,可用的命令非常多。在底线命令模式中,基本的命令有(已经省略了冒号):
- q 退出程序
- w 保存文件
- q! 若曾修改过档案,又不想储存,使用 ! 为强制离开不储存档案。
一般我们写完了,按ESC回退到命令模式,再按:qw回车保存并退出。
2 命令模式其他功能
命令模式下页面变换
- nG n 为数字。移动到这个档案的第 n 行。例如 20G 则会移动到这个档案的第 20 行
- gg 移动到这个档案的第一行,相当于 1G 啊! (常用) n n 为数字。光标向下移动 n 行(常用)
- [Ctrl] +[f] 屏幕『向下』移动一页,相当于 [Page Down]按键 (常用)
- [Ctrl] + [b] 屏幕『向上』移动一页,相当于[Page Up] 按键 (常用)
- [Ctrl] + [d] 屏幕『向下』移动半页
- [Ctrl] + [u] 屏幕『向上』移动半页
搜索替换功能
- /word 向光标之下寻找一个名称为 word 的字符串。例如要在档案内搜寻 vbird 这个字符串,就输入 /vbird 即可!(常用)
- ?word 向光标之上寻找一个字符串名称为 word 的字符串。
- n 这个 n 是英文按键。代表重复前一个搜寻的动作。举例来说, 如果刚刚我们执行 /vbird 去向下搜寻 vbird 这个字符串,则按下 n 后,会向下继续搜寻下一个名称为 vbird 的字符串。如果是执行 ?vbird 的话,那么按下 n 则会向上继续搜寻名称为 vbird 的字符串!
- N 这个 N 是英文按键。与 n 刚好相反,为『反向』进行前一个搜寻动作。 例如 /vbird 后,按下 N 则表示『向上』搜寻 vbird 。
- :1,$s/word1/word2/g 或 :%s/word1/word2/g 从第一行到最后一行寻找 word1 字符串,并将该字符串取代为 word2 !(常用)
- :1,$s/word1/word2/gc 或 :%s/word1/word2/gc 从第一行到最后一行寻找 word1 字符串,并将该字符串取代为 word2 !且在取代前显示提示字符给用户确认 (confirm) 是否需要取代!(常用)
3 多窗口操作
在你打开一个窗口时,有时你可能想参考另一个窗口,这时就可以用这个多窗口功能;
先打开一个窗口
vim 2.lst
:sp **还是打开这个文件
:sp 1.lst **打开其他文件
创建窗口后可以通过以下指令切换窗口
ctrl + w + 上/下方向
参考文献
[1]菜鸟教程 https://www.runoob.com/linux/linux-vim.html