【Linux工具篇】编辑器vim

简介: 【Linux工具篇】编辑器vim



vim是一款多模式的编辑器。正好和vs这种集成开发环境相反,vim的存在很多模式,我们目前主要掌握三种模式即可。分别是命令模式(command mode),插入模式(Insert mode),底行模式(last line mode)。一共有12种模式:six BASIC modes和six ADDITIONAL modes。各模式的功能区分如下:

  • 正常/普通/命令模式(Normal mode)(核心模式)

允许使用者通过命令来进行文本的编辑控制。控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode。

  • 插入模式(Insert mode)

编辑模式。只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。该模式是我们后面用的最频繁的编辑模式。

  • 末行/底行模式(last line mode)

用来进行让vim进行包括但不限于shell进行交互的。文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作。 在命令模式下,shift+: 即可进入该模式。要查看你的所有模式:打开vim,底行模式直接输入。

:help vim-modes

vim的基本操作

进入vim(正常模式)

  • 进入vim,在系统提示符号输入vim及文件名称后,就进入vim全屏幕编辑画面。

注意:不过有一点要特别注意,就是你进入vim之后,是处于[正常模式],你要切换到[插入模式]才能够输入文字。刚打开时,暂时无法正常输入。

$ vim test.c

正常模式->插入模式

  • 输入a
  • 输入i
  • 输入o

插入模式->正常模式

目前处于[插入模式],就只能一直输入文字,如果发现输错了字,想用光标键往回移动,将该字删除,可以先按一下「ESC」键转到[正常模式]再删除文字。当然,也可以直接删除。

  • 按动ESC

正常模式->底行模式

  • 「shift + ;」, 其实就是输入「:」

底行模式->正常模式

  • 按动ESC

底行模式->退出vim

退出vim及保存文件,在[正常模式]下,按一下「shift+;=:」冒号键进入「Last line mode」

  • : w (保存当前文件)
  • : wq (输入「wq」,存盘并退出vim)
  • : q! (输入q!,不存盘强制退出vim)
  • 生命周期是打开到退出。若打开一个不存在的文件,没有写入内容,只有保存并且推出了文件才创建成功,若没有保存直接退出,文件依旧不存在。

vim正常模式命令集

  • yy:复制当前行
  • n+yy:连续复制n行
  • p:粘贴,粘贴到当前光标的下一行
  • n+p:表示连续粘贴n行
  • u:撤销
  • ctrl+r:对历史撤销。进行撤销
  • shift+4=$:将光标定位到当前行的结尾
  • shift+6=^:将光标定位到当前行的开始
  • gg:将光标定位到整个文本文件的最开头
  • shift+g=G:将光标定位到整个文本文件的最结尾
  • n+shift+g=G:将光标定位到整个文本文件的任意一行
  • 除了键盘的上下左右。h,j,k,l:可以表示左下右上
  • n+(h,j,k,l):可以表示n个左下右上
  • h左,j(jump下),k(king,上),i(上)
  • w:按照单词为单位进行光标后移动
  • b:按照单词为单位进行光标前移动
  • shift+`=~:大小写快速切换
  • x:删除光标后续的一个字符
  • n+x:删除光标后续的n个字符
  • shift+x=X:删除光标之前的一个字符
  • n+shift+x=X:删除光n个字符
  • r:对光标指定的位置,进行一个字符的替换
  • n+r:对光标指定的位置,进行n个字符的替换
  • shift+r=R:进入替换模式,直接进行文本替换
  • shift+zz=ZZ:保存并且退出

vim末行模式命令集

  • 在输入之前确保自己处于【底行模式】下:shift+;=:
  • w:保存
  • q:退出
  • wq:保存并且退出
  • !:强制
  • set nu:打开行号
  • nonu:去掉行号
  • !command:不退出vim,可以进行shell命令的执行,常用函数查看。
  • vs filename:多文件操作。

Q1Linux底下多文件操作

  • 垂直:vs new.c
  • 水平:new.c
  • ctrl+6

Q2批量化注释和去注释

批量加注释

  • ctrl+v
  • hjkl区域选择
  • shift+i=I
  • //
  • ESC

批量去注释

  • ctrl+v
  • hjkl区域选择
  • 包含且仅包含//
  • d

Q3ctrl+z和断网的情况

当你按下【ctrl+z】或者断网的时候,回出现以下情况!

这是Linux中的vim防止文件数据丢失创建一个临时文件。此时你会发现你的vim并没有停止运行。此时你只需要删除临时文件即可。

Q4sudo提权

  • 打开白名单→在更目录下→必须用root账号修改
  • vim /etc/sudoers
  • 在100行左右加入自己即可(除了用户其他全部一样)
  • 修改成功保存即可

Q5vim配置

配置文件位置

  • 在目录 /etc/ 下面,有个名为vimrc的文件,这是系统中公共的vim配置文件,对所有用户都有效。
  • 而在每个用户的主目录下,都可以自己建立私有的配置文件,命名为:“.vimrc”。例如,/root目录下,
  • 通常已经存在一个.vimrc文件,如果不存在,则创建之。
  • 切换用户成为自己执行 su ,进入自己的主工作目录,执行 cd ~
  • 打开自己目录下的.vimrc文件,执行 vim .vimrc

常用配置选项

  • 设置语法高亮: syntax on
  • 显示行号: set nu
  • 设置缩进的空格数为4: set shiftwidth=4
  • 上网搜索

使用插件

Linux编译器-vim使用

vi/vim的区别简单点来说,它们都是多模式编辑器,不同是vim是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面。例如语法加亮,可视化操作不仅可以在终端运行,也可以运行于x window、 mac os、windows。我们课堂上,统一按照vim来进行讲解。

  • 思维导图
  • 打开/关闭/查看/查询/插入/删除/替换/撤销/复制/粘贴等操作来分类记忆

🙂感谢大家的阅读,若有错误和不足,欢迎指正

目录
相关文章
|
28天前
|
Rust Ubuntu Java
[Linux工具] Makefile
Makefile是Linux环境下用于自动化编译和链接程序的配置文件,常用于简化大型项目的编译流程。通过定义目标文件、依赖文件及生成命令,Makefile能高效管理编译任务。它不仅适用于C语言项目,还可扩展到其他编程语言和非编程任务中。
56 20
[Linux工具] Makefile
|
15天前
|
监控 安全 Ubuntu
Linux下如何安装配置Fail2ban防护工具
通过以上步骤,可以在Linux系统中成功安装和配置Fail2ban,从而有效保护服务器免受暴力破解等攻击。Fail2ban通过实时监控日志文件,自动更新防火墙规则,为系统安全提供了一层重要的保护。
71 36
|
1天前
|
Linux API
Linux下载工具wget与curl
`wget` 是一个用于从网络下载文件的命令行工具,支持HTTP、HTTPS和FTP协议。它能自动处理下载中断,并支持递归下载网站内容。基本用法:`wget URL`,可指定文件名(`-O`)、保存目录(`-P`),还支持断点续传(`-c`)、限速(`--limit-rate`)和递归下载(`-r`)。相比之下,`curl` 更侧重于发送各种HTTP请求(如GET、POST),并支持文件上传、自定义请求头和cookie等功能。
23 10
|
26天前
|
Linux 网络性能优化 网络安全
Linux(openwrt)下iptables+tc工具实现网络流量限速控制(QoS)
通过以上步骤,您可以在Linux(OpenWrt)系统中使用iptables和tc工具实现网络流量限速控制(QoS)。这种方法灵活且功能强大,可以帮助管理员有效管理网络带宽,确保关键业务的网络性能。希望本文能够为您提供有价值的参考。
83 28
|
23天前
|
网络协议 Unix Linux
深入解析:Linux网络配置工具ifconfig与ip命令的全面对比
虽然 `ifconfig`作为一个经典的网络配置工具,简单易用,但其功能已经不能满足现代网络配置的需求。相比之下,`ip`命令不仅功能全面,而且提供了一致且简洁的语法,适用于各种网络配置场景。因此,在实际使用中,推荐逐步过渡到 `ip`命令,以更好地适应现代网络管理需求。
35 11
|
1月前
|
安全 网络协议 Linux
结合 `nc` 工具利用笑脸漏洞(Smile Bug)攻击 Metasploitable2 Linux
本文介绍如何使用 `nc`(Netcat)工具结合笑脸漏洞(Smiley Bug)攻击 Metasploitable2 Linux 靶机。首先概述了 `nc` 的基本功能和高级用法,包括建立连接、监听端口、文件传输等操作。接着详细描述了笑脸漏洞的原理及其在网络攻防中的应用,展示了通过 `nc` 发送恶意输入检测漏洞的方法。最后结合 Python 脚本实现更复杂的攻击场景,并强调了合法性和环境隔离的重要性。
52 13
|
2月前
|
运维 监控 Linux
推荐几个不错的 Linux 服务器管理工具
推荐几个不错的 Linux 服务器管理工具
177 6
|
7月前
|
开发工具
vi编辑器,现在vi\vim是文本文件进行编辑的最佳选择,Vim是vi的加强的版本,兼容vi的所有指令,vim编辑器有三种工作模式,一开始进入的是命令模式,命令模式i是插入的意思,两下y+p复制内容
vi编辑器,现在vi\vim是文本文件进行编辑的最佳选择,Vim是vi的加强的版本,兼容vi的所有指令,vim编辑器有三种工作模式,一开始进入的是命令模式,命令模式i是插入的意思,两下y+p复制内容
|
8月前
|
开发工具
Vim 编辑器:高效文本编辑的瑞士军刀
**Vim 概览:** Vim 是一个功能丰富的文本编辑器,以其高度可定制性著称。文章介绍了 Vim 的高效使用技巧,包括快捷打开文件、命令行模式下的常用命令、查找与替换、删除和复制文本。还讨论了配置 `.vimrc` 文件以自定义设置,如改变 leader 键、设置缩进和高亮,并展示了安装插件如 vim-airline 和 vim-snazzy 的方法。通过这些技巧,用户能提升 Vim 使用效率。
94 5
|
8月前
|
Ubuntu 搜索推荐 Linux
Linux的Vim编辑器详解
Linux的Vim编辑器详解

热门文章

最新文章