注意:在Linux中一切皆文件,而配置一个服务就是在修改其配置文件的参数。

VIM编辑器有三种模式:

  • 命令模式:控制光标移动,可对文本进行复制、粘贴、删除和查找等工作

    • 在该模式下不能对文件直接编辑,可以输入快捷键进行操作。
  • 输入模式(编辑模式):正常的文本录入
  • 末行模式:保存或退出文档,以及设置编辑环境。【可以在末行模式输入命令来对文件进行操作。】

vim打开文件的方式(4种):

  • #vim  文件路径    作用:打开指定的文件
  • #vim +数字  文件的路径  作用:打开指定的文件,并将光标移动到指定行
  • #vim +/字符串(关键词) 文件路径    作用:打开指定的文件,并高亮显示关键词
  • #vim 文件路径1 文件路径2 文件按路径3  作用:同时打开多个文件

    

1.命令模式

注意:该模式是打开文件的第一个看到的模式,打开文件即可看到。

  • 光标的移动:

    • 光标移动到行首:shift+6或^
    • 光标移动到行尾:shift+4或$
    • 光标移动到首行:gg
    • 光标移动到末行:G
    • 翻屏:向上ctrl+b   向下:crtl +f
  • 复制操作
    • 复制光标所在行   yy
    • 粘贴:在想要粘贴的地方按下p键
    • 复制多行:数字 【整数】 yy     该命令包含当前行
    • 可视化复制:  crtl+v, 按方向键选中需要复制的区块,按下yy键进行复制,最后按p键进行粘贴。
  • 剪切/删除操作
    • 剪切/删除光标所在行:dd【剪切/删除之后下一行上移】
    • 注意:严格意义上属剪切命令,如果不粘贴就是删除的效果
    • 剪切/删除光标所在行为准,向下删除/剪切指定的行:数字  dd【删除之后下一行上移】
    • 剪切/删除光标所在的当前行,但是删除之后下一行不上移:D【删除后当前行变为空行】
  • 撤销/恢复
    • 撤销:输入冒号u/ u【undo】
    • 恢复:crtl+r【恢复取消之前的动作】
  • 扩展:
    • 光标的快速移动

      • 快速将光标移动到指定行:数字 G
      • 以当前光标为准向上/下移动n行:数字 上下方向键
      • 以当前光标为准向左/右移动n个字符:数字 左右方向键
      • 末行模式下,移动到指定的行:先输入英文“:”,然后输入行数数字,按下回车。

2.编辑模式

3.末行模式

  • 进入方式:由命令模式进入,按下“:” 或者“/(表示查找)”即可进入
  • 退出方式:
    • 按下esc
    • 连按两次esc
    • 删除末行中的全部命令
  • 保存操作:“:w”      保存文件
  • 另存操作:“:w  路径”    另存文件
  • 保存并退出:“:wq”    
  • 强制关闭:“q!”   强制退出,刚才做的操作不做保存
  • 调用外部命令:“:!外部命令”
  • 搜索/查找:“/关键词”   在搜索结果中切换上/下一个结果:N/n         如果需要取消高亮,则输入:“nohl”【no highlight】

  

  • 替换 :
    • “:s/搜索的关键词/新的内容”   替换光标所在行的第一处
    • “:s/搜索的关键词/新的内容/g”   替换光标所在行全部符合条件的内容
    • “:%s/搜索的关键词/新的内容”    替换整个文档中每行第一个符合条件的内容
    • “:%s/搜索的关键词/新的内容/g”  替换整个文档符合条件的内容    
    • %:表示整个文件
    • g:表示全局【global】
  • 显示行号:“:set  nu”[number]
  • 不显示行号:“:set nonu”

4.模式间的切换【重点】

VIM编辑器和Shell命令脚本的更多相关文章

  1. 4.Vim编辑器与Shell命令脚本

    第4章 Vim编辑器与Shell命令脚本 章节简述: 本章首先讲解如何使用Vim编辑器来编写.修改文档,然后通过逐个配置主机名称.系统网卡以及Yum软件仓库参数文件等实验,帮助读者加深Vim编辑器中诸 ...

  2. Vim编辑器与Shell命令脚本

    章节简述: 本章节将教给您如何使用Vim编辑器来编写文档.配置主机名称.网卡参数以及yum仓库 ,熟练使用各个模式和命令快捷键. 我们可以通过Vim编辑器将Linux命令放入合适的逻辑测试语句(if. ...

  3. 第4章 Vim编辑器与Shell命令脚本

    章节简述: 本章节将教给您如何使用Vim编辑器来编写文档.配置主机名称.网卡参数以及yum仓库 ,熟练使用各个模式和命令快捷键. 我们可以通过Vim编辑器将Linux命令放入合适的逻辑测试语句(if. ...

  4. Linux 就该这么学 CH04 VIM编辑器和Shell命令脚本

    0 概述 1 Vim编辑器 在linux 中一切都是文件,而配置一个服务就是修改其配置文件的参数. vim 编辑器有三种模式:命令模式,末行模式和编辑模式. 命令模式:控制光标移动,对文件进行操作. ...

  5. Linux就该这么学28期——Day05 vim编辑器与Shell命令脚本 (yum配置 网卡配置)

    vim 三种模式: 命令模式 按行操作 dd 剪切.删除 5dd dG   全删 yy 复制光标所在行 p 粘贴 u 撤销操作 / 搜索 /ab n  下一个 N   上一个 输入模式 a 当前光标处 ...

  6. 《Linux就该这么学》培训笔记_ch04_Vim编辑器与Shell命令脚本

    <Linux就该这么学>培训笔记_ch04_Vim编辑器与Shell命令脚本 文章最后会post上书本的笔记照片. 文章主要内容: Vim编辑器 Shell脚本 流程控制语句 if语句 f ...

  7. vim中执行shell命令小结

    vim中执行shell命令,有以下几种形式 1):!command 不退出vim,并执行shell命令command,将命令输出显示在vim的命令区域,不会改变当前编辑的文件的内容 例如:!ls -l ...

  8. vim之执行shell命令

    vim中执行shell命令,有以下几种形式 (1) :!command 不退出vim, 并执行shell命令command, 将命令输出显示在vim的命令区域,不会改变当前编辑的文件的内容 (2)   ...

  9. Vim编辑器与shell脚本

      目录                                                          Vim文本编辑器 Shell脚本 Shell编程变量 流程控制语句 计划任务 ...

  10. vim中执行shell命令

    1):!command   不退出vim,并执行shell命令command,将命令输出显示在vim的命令区域,不会改变当前编辑的文件的内容   例如   :!ls -l   特别的可以运行:!bas ...

随机推荐

  1. C# 编译异常CS0433

    编译后遇到nuget版本冲突: error CS0433: 类型"ShellFile"同时存在于"Microsoft.WindowsAPICodePack.Shell, ...

  2. 为什么 Go for-range 的 value 值地址每次都一样?

    原文链接: 为什么 Go for-range 的 value 值地址每次都一样? 循环语句是一种常用的控制结构,在 Go 语言中,除了 for 关键字以外,还有一个 range 关键字,可以使用 fo ...

  3. 可视化—gojs 超多超实用经验分享(一)

    目录 1. 设置分组模板,默认样式,统一最小宽度,展开收起状态监听 2. 分组名称显示成员个数: 分组名称+成员个数: name(children) 3. 分组成员为空时,不显示 placeholde ...

  4. ToolStrip1

    Private Sub ToolStrip1_ItemClicked(sender As Object, e As ToolStripItemClickedEventArgs) Handles Too ...

  5. 用好kafka,你不得不知的那些工具

    前言 工欲善其事,必先利其器.本文主要分享一下消息中间件kafka安装部署的过程,以及我平时在工作中针对kafka用的一些客户端工具和监控工具. kafka部署架构 一个kafka集群由多个kafka ...

  6. liunx操作系统下配置服务器

    centos7 下配置服务器基本步骤 1,yum install  服务器名称 2,关闭防火墙,配置服务器配置文件,开启服务, 3,创建文件,设置访问权限, 4,本地登陆,测试服务器能否连通

  7. Abstract Factory Pattern 抽象工厂模式简介与 C# 示例【创建型】【设计模式来了】

    〇.简介 1.什么是抽象工厂模式? 一句话解释:   通过对抽象类和抽象工厂的一组实现,独立出一系列新的操作,客户端无需了解其逻辑直接访问. 抽象工厂模式(Abstract Factory Patte ...

  8. python selenium框架解决ip代理框不能自动化登录,解决pyautogui开不了多线程问题

    有时候我们使用python自动化框架的时候,打开一个网页的时候,它会出现出线这一种登录框,我们f12检查不了,用开发者工具强制检查里面没有任何属性. 那这时候我们就可以用到python第三方库:pya ...

  9. 在asp.net core web api中添加efcore使用codefirst

    首先创建webapi项目,我这里使用的版本是.net6 在nuget中添加对应的工具包 红框标出来的是对应的数据库扩展包,mysql用mysql版,sqlserver用sqlserver版,选择正确的 ...

  10. IIC通信协议

    1.IIC 通信协议简介 I2C 通讯协议(Inter-Integrated Circuit)是由 Phiilps 公司开发的, 由于它引脚少,硬件实现简单,可扩展性强,不需要 USART.CAN 等 ...