当前位置: 首页 > article >正文

linux中vim的操作

(码字不易,关注一下吧w~~w)

命令模式:

当我们按下esc键时,我们会进入命令模式;当使用vi打开一个文件时也是进入命令模式。

光标移动:

  1  保存退出:ZZ

  2  代码格式化:gg=G

  3 光标移动: h--左移  l--右移  j--下移  k--上移

  4  移动一个单词: w

  5  光标移动到文件开头:gg

  6  光标移动到文件末尾:G

  7  移动到行首:0

  8  移动到行尾:$ 

  9  跳转到n行:nG

删除命令:

  1 删除光标所在的字符:x

  2 删除光标前一个字符:X

  3 删除光标所在的单词:dw(光标要在单词开头)

  4 删除光标前所有内容,不包含光标所在字符:d0

  5 删除光标后所有内容,包含光标所在字符:d$或则D

  6 删除光标所在行:dd   本质为剪切

  7 从光标当前行向下删除n行:ndd(包含光标行)

  8 ctrl+v/v :使用h j k l移动选择内容,然后按d删除。crtl+v为列模式,v为非列模式

撤销命令和反撤销命令:

一步步撤销:u   相当于ctrl+z

反撤销:ctrl+r  相当于ctrl+y

复制粘贴:

1  复制当前行:yy

2  复制n行:nyy

3  将光标所在位置向下新开辟一行,并粘贴:p

3  将光标所在位置向上新开辟一行,并粘贴:P

剪切操作:按dd或者ndd删除,将删除行保存到剪切板中,然后按p/P就可以粘贴了

可视模式:

v/ctrl+v 使用d删除   使用y复制  使用p粘贴到光标后面   使用P粘贴到光标前面

查找命令:

想要查找xxx内容  :/ xxx   光标会移动到xxx处,按n向下寻找相同的xxx,按N向上寻找相同的xxx

替换命令:
1  替换当前字符:r

2  替换当前行光标后的字符

切换文本输入模式:

1  光标前插入:i

2  光标后插入:a

3  在光标所在行的行首插入:I

4  在光标所在行的行尾插入:A

5 在光标所在行的下面新创建一行,行首插入:o

6 在光标所在行的上面新建一行,行首插入:O

7  删除光标所在的字符,从光标当前位置插入:s

8  删除光标所在行,从行首插入:S

9 按列模式插入:先按ctrl+v进入列模式,按hjkl移动选定某列,按I想前插入,然后插入字符,最后按两次esc退出

末行模式的操作:

从命令模式切换到末行模式按  :

保存退出:

退出:q

强制退出,不保存修改内容:q!

保存修改内容,不退出:w

保存并退出:wq/x

替换操作:

:s/word1/word2   光标所在行的第一个word1替换为word2

:s/word1/word2/g  光标所在行所有word1替换为word2

:m,ns/word1/word2/g 将第m行到n行的所有word1替换为word2

:%s/word1/word2/g  当前文件所有word1替换为word2

:%s/word1/word2/gc  当前文件所有word1替换为word2,但每次需要用户确认

快速翻屏:

向下翻半屏,光标向上移动:ctrl+u

向上翻半屏,光标向下移动:ctrl+d

向上翻一屏:ctrl+f

向后翻半屏:ctrl+b

分屏操作:

sp:当前文件水平分屏

vsp:当前文件垂直分屏

sp 文件名   :当前文件与该文件水平分屏

vsp 文件名 :当前文件与该文件垂直分屏

ctrl+w+w :在窗口间切换光标 

wall:保存

wqall:保存退出

qall!强制退出

:!shell 可以执行shell命令

:set nu 显示行数

:set tabstop=4 设置缩进4个空格

:set shiftsidth=4 设置gg=G缩进4个空格


http://www.kler.cn/a/225254.html

相关文章:

  • MarkDown怎么转pdf;Mark Text怎么使用;
  • 华为ensp-BGP路由过滤
  • 【AUTOSAR 基础软件】Can模块详解(Can栈之驱动模块)
  • 二维码文件在线管理系统-收费版
  • 前端路由 Hash 和 History 模式原理对比区别
  • flutter 专题二十四 Flutter 响应式状态管理框架GetX
  • 2024美赛 MCMProblem B: Searching for Submersibles 问题B 搜索潜水器 完整思路代码分享
  • ArcGIS Pro 如何计算长度和面积等数据?
  • 使用goland IDE编写go windows ui
  • 打造工业4.0的5G+边缘云服务产业生态,艾灵完成1.5亿元A轮融资
  • Unity中使用Ultraleap的InteractionButton组件
  • Spring Boot通过配置文件支持数据库自定义表名
  • CloudStack Agent 配置文件解析与含义
  • 【机器学习】贝叶斯垃圾邮件识别
  • 如何解决 docker registry x509 证书不信任问题?
  • Linux系统各目录作用
  • 微服务-微服务Alibaba-Nacos 源码分析 (源码流程图)
  • Leetcode 《面试经典150题》169. 多数元素
  • 蓝桥杯算法赛第4场小白入门赛强者挑战赛
  • 数据分析中需要用的的python知识(包括Numpy、Pandas、Matplotlib)
  • SQL 语句
  • 通过与chatGPT交流实现零样本事件抽取
  • 网络通信--术语对照表
  • Angular组件(二) 分割面板ShrinkSplitter
  • 5G安卓核心板开发板_MT6833天玑700规格参数
  • Unity之做一个最简单的FPS游戏demo