Java学习者论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

手机号码,快捷登录

恭喜Java学习者论坛(https://www.javaxxz.com)已经为数万Java学习者服务超过8年了!积累会员资料超过10000G+
成为本站VIP会员,下载本站10000G+会员资源,购买链接:点击进入购买VIP会员
JAVA高级面试进阶视频教程Java架构师系统进阶VIP课程

分布式高可用全栈开发微服务教程

Go语言视频零基础入门到精通

Java架构师3期(课件+源码)

Java开发全终端实战租房项目视频教程

SpringBoot2.X入门到高级使用教程

大数据培训第六期全套视频教程

深度学习(CNN RNN GAN)算法原理

Java亿级流量电商系统视频教程

互联网架构师视频教程

年薪50万Spark2.0从入门到精通

年薪50万!人工智能学习路线教程

年薪50万!大数据从入门到精通学习路线年薪50万!机器学习入门到精通视频教程
仿小米商城类app和小程序视频教程深度学习数据分析基础到实战最新黑马javaEE2.1就业课程从 0到JVM实战高手教程 MySQL入门到精通教程
查看: 226|回复: 0

[默认分类] Linux vim编辑器常用操作技巧整理

[复制链接]
  • TA的每日心情
    开心
    2021-12-13 21:45
  • 签到天数: 15 天

    [LV.4]偶尔看看III

    发表于 2018-7-9 15:24:29 | 显示全部楼层 |阅读模式

    VIM编辑器常用模式有:
    普通模式:实现基本的光标移动与大量的快捷键操作 (vim编辑器默认模式)
    插入模式:实现文本的基本编辑功能
    命令模式:输入特定的指令实现特定的功能


    普通模式:
    在插入模式或者命令模式中可以按ESC键来退回到普通模式


    命令模式:
    在普通模式下输入":"    即可进入到命令模式,在“:”后输入指令,即可实现特定的功能






      
       
       
         
          普通模式:移动光标的操作
         
       
       
       
         
          G
         
       
         
          将光标移动到文件的最后一行
         
       
       
       
         
          gg
         
       
         
          将光标移动到文件的第一行,等价于
          1gg
          或
          1G
         
       
       
       
         
          0
          或
          ^
         
       
         
          数字
          0
          ,从光标所在位置移动到当前行的结尾
         
       
       
       
         
          $
         
       
         
          从光标所在位置将光标移动到当前行的结尾
         
       
       
       
         
          n<Enter>
         
       
         
          n
          为数字,
          <Enter>
          为回车键,将光标从当前位置向下移动
          n
          行
         
       
       
       
         
          ngg
         
       
         
          N
          为数字,移动到文件的第
          n
          行,如
          11gg
          可移动到
          11
          行,可配合“
          :set nu
          ”查看,同
          nG
         
       
       
       
         
          H
         
       
         
          光标移动到当前窗口的最上方哪一行
         
       
       
       
         
          M
         
       
         
          光标移动到当前窗口的中间哪一行
         
       
       
       
         
          L
         
       
         
          光标移动到当前窗口的最下方哪一行
         
       
       
       
         
          h
         
       
         
          光标向左移动一个字符
         
       
       
       
         
          j
         
       
         
          光标向下移动一个字符
         
       
       
       
         
          k
         
       
         
          光标向上移动一个字符
         
       
       
       
         
          l
         
       
         
          光标向右移动一个字符
         
       
       
       
         
          普通模式:搜索与替换操作
         
       
       
       
         
          /oyb
         
       
         
          从光标位置开始,向下寻找名为
          oyb
          的字符串
         
       
       
       
         
          ?oyb
         
       
         
          从光标位置开始,向上寻找名为
          oyb
          的字符串
         
       
       
       
         
          n
         
       
         
          从光标位置开始,向下重复前一个搜索的动作
         
       
       
       
         
          N
         
       
         
          从光标位置开始,向上重复前一个搜索的动作
         
       
       
       
         
          :%s/A/B/g
         
       
         
          把符合
          A
          的内容全部替换为
          B
          ,斜线分割,可以用
          @
          、
          #
          等替代
         
       
       
       
         
          :n1,n2s/A/B/g
         
       
         
          n1
          、
          n2
          为数字,在第
          n1
          行和
          n2
          行间寻找
          A
          ,用
          B
          替换
         
       
       
       
         
          普通模式:复制、粘贴、删除等操作
         
       
       
       
         
          yy
         
       
         
          复制光标所在的当前行
         
       
       
       
         
          nyy
         
       
         
          N
          为数字,复制光标开始向下共
          n
          行
         
       
       
       
         
          p/P
         
       
         
          P
          将已复制的数据粘贴到光标的下一行,
          P
          则为粘贴到光标的上一行
         
       
       
       
         
          dd
         
       
         
          删除光标所在的当前行
         
       
       
       
         
          ndd
         
       
         
          n
          为数字,删除从光标开始向下共
          n
          行
         
       
       
       
         
          d$
         
       
         
          删除光标至行尾的内容
         
       
       
       
         
          x
         
       
         
          删除光标当前字符
         
       
       
       
         
          J
         
       
         
          删除换行符,可以将两行合并为一行
         
       
       
       
         
          rn
         
       
         
          将光标当前字符替换为
          n
          (
          n
          为任何键盘单个输入)
         
       
       
       
         
          u
         
       
         
          恢复(回滚)前一个执行过操作,
          可以多次使用
          uu
          表示撤销两步操作
         
       
       
       
         
          进入编辑模式
         
       
       
       
         
          i
         
       
         
          后续输入的内容将插入至当前光标的前面
         
       
       
       
         
          I
         
       
         
          后续输入的内容将插入至当前光标的段首
         
       
       
       
         
          a
         
       
         
          后续输入的内容将插入至当前光标的后面
         
       
       
       
         
          A
         
       
         
          后续输入的内容将插入至当前段落的段尾
         
       
       
       
         
          o
         
       
         
          在当前行的后面创建新的空白行
         
       
       
       
         
          O
         
       
         
          在当前行的前面创建新的空白行
         
       
       
       
         
          Esc
         
       
         
          退出编辑模式,回到普通模式中
         
       
       
       
         
          进入命令模式
         
       
       
       
         
          :wq
         
       
         
          退出并保存
         
       
       
       
         
          :wq!
         
       
         
          退出并强制保存,“!”为强制的意思
         
       
       
       
         
          :q!
         
       
         
          强制退出,不保存
         
       
       
       
         
          :n1,n2 w filename
         
       
         
          n 1
          、
          n2
          为数字
          ,
          将
          n1
          行到
          n2
          行的内容保存成
          filename
          这个文件
         
       
       
       
         
          :n1,n2 co  n3
         
       
         
          n 1
          、
          n2
          为数字
          ,
          将
          n1
          行到
          n2
          行的内容拷贝到
          n3
          位置下
         
       
       
       
         
          :n1,n2 m  n3
         
       
         
          n 1
          、
          n2
          为数字
          ,
          将
          n1
          行到
          n2
          行的内容移动至
          n3
          位置下
         
       
       
       
         
          :!command
         
       
         
          暂时离开
          vi
          到命令行模式下执行
          command
          的显示结果!例如
          :! ls /etc
         
       
       
       
         
          :set nu
         
       
         
          显示行号
         
       
       
       
         
          :set nonu
         
       
         
          与
          set nu
          相反,取消行号
         
       
       
       
         
          :vs  filename
         
       
         
          垂直分屏显示,同时显示当前文件合
          filename
          对应文件的内容
         
       
       
       
         
          :sp  filename
         
       
         
          水平分屏显示,同时显示当前文件合
          filename
          对应文件的内容
         
       
       
       
         
          I+#+Esc
         
       
         
          在可视化模块下(
          ctrl+v
          )
          ,
          一次性注释所选的多行,取消注释可用
          :n1,n2s/#//g, #
          号可以换成别的操作,列如
          tab
          键,这样就是批量缩进
         
       
       
       
         
          Del
         
       
         
          在可视化模块下(
          ctrl+v
          )
          ,
          一次性删除所选内容
         
       
       
       
         
          r
         
       
         
          在可视化模块下(
          ctrl+v
          )
          ,
          一次性替换所选内容
         
       
       
         
         
       
      



      
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|手机版|Java学习者论坛 ( 声明:本站资料整理自互联网,用于Java学习者交流学习使用,对资料版权不负任何法律责任,若有侵权请及时联系客服屏蔽删除 )

    GMT+8, 2024-5-11 04:10 , Processed in 0.394709 second(s), 38 queries .

    Powered by Discuz! X3.4

    © 2001-2017 Comsenz Inc.

    快速回复 返回顶部 返回列表