博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
在Windows下如何练习Linux下的vim? (为即将步入IT行业的兄弟和妹子介绍一个工具)
阅读量:4140 次
发布时间:2019-05-25

本文共 1892 字,大约阅读时间需要 6 分钟。

       这个年代, 不懂点linux, 都不好说自己是搞软件开发的了。 在linux环境下, 不会用vim, 那就意味着根本没入门啊。 如果是是在校的学生, 那估计接触linux的机会比较少, 那么, 现在入职前热身一下vim吧。

      什么是vim呢, 你就把它理解为Windows平台上的notepad++或者ultraEdit吧, 就是个编辑器而已。 不过对于没接触过linux的人来说, 还是应该花点时间来熟悉一下这个编辑器。在Windows上, 如何练习linux下的vim呢? 很简单。 在我们之前的博文中介绍了一款Windows下的Git工具, 这是一个命令行工具, 是学习Git的好工具。 其强大之处在于, 不仅可以学习linux命令行, 学习linux下的Git, 还可以学习linux下的vim哈。后续还会介绍利用该工具学习shell script.

     下载msysGit, 才十几兆, 安装后即可使用, 很方便。 截个图:

      

      好的, 上面把基本的环境已经跟大家说了, 剩下的就是自己去操练吧, 可以在网上找一些教程, 然后进行实战练习。下面, 我来简要说一下和vim相关的基本东西吧, 要真正掌握它, 用它, 远非下面能达到,还是那句话:孰能生巧

    1. vim具有的状态具有三种模式: 一般模式, 编辑模式和命令行模式。

    2. 在shell中, vim test.txt进入了一般模式, 如果test.txt本身存在, 则打开这个文件, 如果不存在, 则新建一个, 并打开。

    3. 一般模式下, 输入a, 或者i或者o, 就进入编辑模式了, 可以写东西了。

    4. 编辑模式下,按esc退出编辑模式, 进入一般模式了。

    5. 一般模式下, :w表示把数据write到文件中, 其实就是保存。 但此时并不退出一般模式。

    6.一般模式下, :q表示退出, 但是如果没有保存, 怎能让你随意退出呢? 系统会提示你的, 真贴心。

    7. 一般模式下, 保存并退出vim, 那就用:wq吧, 当然你可以分步来, 先:w, 再写:q, 还有一个, 可以一步搞定, 那就是:x.

    8. 一般模式下, 你修改了东西, 但不想保存, 想直接退出vim, 怎么办? 用:q!可以强退, 真野蛮。

    9. 一般模式下, 输入:, /, ?会进行到命令模式, 前面讲的数据保存, 实际上已经进入了命令模式。可以执行保存,查找等操作。 

    10. 命令模式下, 按esc退到一般模式。

 

     下面是我的一些积累, 慢慢添加一些常用的vim 命令(为了方便,我就不说什么模式下了), 冷门的命令, 没有必要刻意去记忆。

光标:

11. hjkl表示左下上右, 以前用方向键用得比较多。

12. ctrl + b 向回翻页, ctrl + f向前翻页。 顺便复习一下back, forwad, 联系一下单词, 就知道怎么用了。实际上就相当于page up/down

13. gg跳到文件头, G跳到文件尾。

14. 5H, 跳到文件的第5行, 就跟Source Insight里面的ctrl + G一样。high

15. 5L, 跳到文件的倒数第5行。low

16. 0到本行开头, $到本行结尾。

16.1.    10 enter, 光标下移10行

 

删除:

17. x删除当前字符

18. :1, 10d  删除第1行到第10行的内容

19. db 删除光标前面的单词, 10db表示删除光标前面的10个单词, 常用。 delete before.   

19.1   dw表示删除光标右边的单词, 10dw表示10个, 常用。 delete word.

20. dd删除当前行, 10dd, 删除当前10行, 往下数的。

20.1  D表示删除光标后的当前行。

20.2  dG表示删除光标后的所有内容, 所以gg和dG的联合使用, 可以删除文件所有内容, 形成一个空文档。

 

复制和粘贴:

21. yy 复制当前行, 5yy, 复制当前5行。

22. yw复制当前单词

23. p粘贴在行前, P粘贴在行后。

 

撤销和重做:

24. u表示undo, ctrl + r表示redo, 实际上就类似于ctrl z,  ctrl y.

25. . 单独的一个点, 就是重复上一个命令, 颇有方向键向上的感觉。

 

显示和取消行号:

26. :set nu,     :set nonum

 

搜索:

27. /xxx, 正向搜索xxx串, n表示下一个, N表示上一个

28. ?xxx, 反向搜索xxx串, n表示下一个, N表示上一个

 

 

   还是那句话: 孰能生巧

 

      

你可能感兴趣的文章
《读书笔记》—–书单推荐
查看>>
JAVA数据类型
查看>>
【Python】学习笔记——-6.2、使用第三方模块
查看>>
【Python】学习笔记——-7.0、面向对象编程
查看>>
【Python】学习笔记——-7.2、访问限制
查看>>
【Python】学习笔记——-7.3、继承和多态
查看>>
【Python】学习笔记——-7.5、实例属性和类属性
查看>>
git中文安装教程
查看>>
虚拟机 CentOS7/RedHat7/OracleLinux7 配置静态IP地址 Ping 物理机和互联网
查看>>
Jackson Tree Model Example
查看>>
常用js收集
查看>>
如何防止sql注入
查看>>
springmvc传值
查看>>
在Eclipse中查看Android源码
查看>>
Android使用webservice客户端实例
查看>>
[转]C语言printf
查看>>
C 语言 学习---获取文本框内容及字符串拼接
查看>>
C 语言学习 --设置文本框内容及进制转换
查看>>
C 语言 学习---判断文本框取得的数是否是整数
查看>>
C 语言 学习---ComboBox相关、简单计算器
查看>>