vim编辑器常用命令

vim编辑器有两种模式:输入文本模式,输入命令模式。

常用命令:

  • 插入文本模式:
$ i
  • 退出插入文本模式:
$ Esc
  • 命令行模式:
$ : (英文输入法下)
  • 保存文本:
$ :w 文件名
  • 退出vim:
$ :q[退出]     q! [强制退出]  或是  wq! [保存并强制退出],适合对已经存在的文件。

注意:首先进入命令行模式,输入这些命令才管用。

  • 强制存盘写入

保存并退出时报错:E37: No write since last change No write since last change

$ :w!

命令解释:

w :write 
q :quite  
 i:insert


案例:

1.删除某次提交记录

比如我的提交历史如下,我现在想删除commit_B,但是不影响commit_B之后的提交历史

commit_C 

commit_B

commit_A
  1. 首先找到commit_B提交之前的一次提交的commit_A
  2. 执行如下命令
    git rebase -i commit_A
  3. 此时光标会停留在你想删除的commit_B前,按下delete键删除 pick,然后 按下 i键,进入insert 插入文本模式。输入 "drop" 然后。:q发现退出不成功。报写入失败的错误E37:No write since last change (add ! to override)。此时则需要强制写入输入:w!完成写入动作。然后再:q退出vim。
    2023-09-27.140342.png
  4. 最后一步,执行git push -f
  5. 如果是一个多人合作的仓库,建议别人把本地仓库删除。重新clone 一份远程仓库到本地。
  6. git log 发现成功删除了那一条记录。

2.使用vim写一个test.txt文本文件。

进入vim编辑器

$ vim

效果如图:
眼睛注意两个区域


image.png

文本编辑模式

$ i

此时输入一个 i 进入了插入文本模式


image.png
$ 输入内容
image.png
$ 按下 Esc键
image.png

进入命令行模式,注意,这里输入法必须是英文模式下,才能输入进去这个冒号

$ :

然后,保存内容到 test.txt文件中。

$ :w test.txt  然后回车
image.png

然后回车后:

image.png

然后再次进入命令行模式

$ :      

再输入 q ,然后回车退出vim

$ :q

当然,这个文件要是不想要,可以直接输入 q! ,那么就直接退出vim。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容