VIM常用操作

基本操作

  • 打开文件vim filename
  • 保存文件:w
  • 退出 Vim:q
  • 保存并退出:wqZZ
  • 强制退出:q!

模式切换

  • 进入插入模式i(在光标前插入)、a(在光标后插入)、o(在当前行下插入新行)
  • 返回普通模式Esc

移动光标

  • 上下左右移动h(左)、j(下)、k(上)、l(右)
  • 跳到行首/行尾0(行首)、$(行尾)
  • 跳到下一行/上一行的开头gg(文件开头)、G(文件末尾)
  • 按词跳转w(到下一个单词开头)、b(到上一个单词开头)

编辑操作

  • 删除字符x
  • 删除整行dd
  • 复制行yy
  • 粘贴p
  • 撤销u
  • 重做Ctrl + r

查找与替换

  • 查找/keyword,然后按 n 查找下一个,N 查找上一个
  • 替换:s/old/new/g(在当前行替换),:%s/old/new/g(在整个文件替换)

窗口与标签页

  • 分屏:split(水平分屏)、:vsplit(垂直分屏)
  • 切换窗口Ctrl + w 然后按 h/j/k/l
  • 关闭窗口:q
相关推荐
c238566 小时前
Linux C++ 进度条进阶美化与工程化封装
linux·运维·服务器
凡人叶枫8 小时前
Effective C++ 条款17:以独立语句将 newed 对象置入智能指针
java·linux·开发语言·c++·算法
RisunJan9 小时前
Linux命令-pgrep (通过进程名查找进程 ID)
linux·运维
信创工程师-小杨9 小时前
Linux内网环境如何解决依赖的问题
linux·运维·服务器
设计师小聂!9 小时前
宝塔 Linux 面板保姆级教程
linux·mysql·开源·运维开发
不吃土豆的马铃薯10 小时前
C++ 高性能网络缓冲区 Buffer 源码解析
linux·服务器·开发语言·网络·c++
java知路10 小时前
linux yum 下载docker安装包及依赖安装包,并离线安装
linux·运维·docker
fanged10 小时前
设备树学习2--一个DTBO实验
linux·嵌入式开发
星间都市山脉10 小时前
Android STS(Security Test Suite)完整介绍与测试流程
android·java·linux·windows·ubuntu·android studio·androidx
qq_1631357510 小时前
Linux 【02-tac命令超详细教程】
linux