【linux运维】vim基础应用

系列综述:

💞目的:本系列是个人整理为了学习基本的shell编程和linux命令,整理期间苛求每个知识点,平衡理解简易度与深入程度。

🥰来源:材料主要源于b站大学------linux运维课程进行的,每个知识点的修正和深入主要参考各平台大佬的文章,其中也可能含有少量的个人实验自证。

🤭结语:如果有帮到你的地方,就点个赞和关注一下呗,谢谢🎈🎄🌷!!!


文章目录


😊点此到文末惊喜↩︎


vim概述

基础知识

  1. vim是一个全屏幕文本编辑器,是vi编辑器的增强版
bash 复制代码
# 定义临时别名,让vi命令执行vim
alias vi='vim'
# 定义永久别名,将别名写入环境变量配置文件~/.bashrc
  1. vim的三种工作模式

    • 命令模式:该模式下可以使用快捷键进行控制
    • 输入模式:进入文本编辑
    • 末行/编辑模式:进行该文件处理操作
  2. 模式概述

    • 切换
    • 进入输入模式
    命令 作用
    a 在光标所在字符后插入
    A 在光标所在行尾插入
    i 在光标所在字符前插入
    I 在光标所在行首插入
    o 在光标插入新行
    O 在光标插入新行
    • 末行/模式的操作
    命令 作用
    :w 保存但不退出
    :w 文件名 将文件另存为新文件
    :!q 不保存退出,改些没用的
    :!wq 保存退出,只能文件所有者或root用户才能使用

命令模式操作

  1. 光标移动快捷键

    命令 作用
    h / j / k / l 左/下/上/右
    g 快速移动到文件头
    G 快速移动到文件末尾
    ^ 移动到行首(类似正则)
    $ 移动到行尾(类似正则)
    :数字 数字表示移动到第几行
  2. 删除快捷键

    命令 作用
    x 删除单个字母
    nx 删除n个字母
    dd 删除单行
    ndd 删除多行
    n,md 删除第n到m行
    dG 删除该行以下的所有字符
  3. 复制与粘贴

    命令 作用
    yy 复制光标所在行
    nyy 复制光标及以下所在行
    小写p 粘贴在光标所在行的下面
    大写P 粘贴在光标所在行的上面
    r 替换光标所在的字符
    R 从光标开始出替换该行字符,按ESC结束
  4. 撤销和反撤销
    | u | 撤销到上一步 |
    | Ctrl+r | 反撤销 |

末行模式操作

  1. 基本配置永久生效

    • 手工建立~/.vimrc,然后将需要的参数手工写入
  2. 配置文件展示信息

    命令 作用
    :set nu 显示行号
    :set nonu 取消行号
    :syntax on 显示相应颜色
    :syntax off 取消显示相应颜色
    :set hlsearch 将所要查找的字符串高亮显示
    :set nohlsearch 取消所要查找字符串的高亮显示
    :set ruler 显示右下角状态栏
    :set noruler 取消右下角状态栏的显示
    :set list/nolist 是否显示隐藏字符,如^表示Tab,表示回车(win下回车是\^M
  3. win和linux下文件的回车符号不同,经常会导致shell脚本的解析失败问题

  4. 查找命令

    命令 作用
    /查找内容 从光标所在行向下查找
    ?查找内容 从光标所在行向上查找
    n 向下查找一个
    N 向上查找一个
  5. linux下文本文件非正常关键会通过.swp文件缓存内容,需要删除该文件才能继续编辑

  6. 替换命令

    命令 作用
    :1,10s/old/new/g 将1-10行的所有旧字符串替换成新字符串
    :%s/old/new/g 将文件中的所有旧字符串替换成新字符串
    :n,ms/^/#/g 注释文件中的n到m行
    :n,ms/^#//g 取消指定行的注释
    :n,ms/^g 注释文件中的n到m行(其他语言)
    :n,ms/^g 取消指定行的注释(其他语言)

使用技巧

  1. 快捷操作

    命令 作用
    :r 文件名 将文件内容导入光标位置
    :!系统命令 在vim模式中可以执行系统命令
    :r !命令 将命令的执行结果导入到光标所在位置
    :map 快捷键 所要执行的命令 自定义命令的快捷键
    :map ^P I# 按住ctrl+p时,在行首加入注释
    :map ^B ^x 按住ctrl+b时,删除行首第一个字符(注释)
  2. map中的组合键符号需要使用ctrl+v,然后再输入其对应的组合键,永久生效需要写入到~/.vimrc文件中


少年,我观你骨骼清奇,颖悟绝伦,必成人中龙凤。 不如点赞·收藏·关注一波


🚩点此跳转到首行↩︎

参考博客

  1. 待定引用
  2. 待定引用
  3. 待定引用
  4. 待定引用
  5. 待定引用
  6. 待定引用
  7. 待定引用
  8. 待定引用
相关推荐
vip45110 分钟前
Linux 经典面试八股文
linux
大霞上仙12 分钟前
Ubuntu系统电脑没有WiFi适配器
linux·运维·电脑
Karoku0661 小时前
【企业级分布式系统】Zabbix监控系统与部署安装
运维·服务器·数据库·redis·mysql·zabbix
为什么这亚子1 小时前
九、Go语言快速入门之map
运维·开发语言·后端·算法·云原生·golang·云计算
布值倒区什么name1 小时前
bug日常记录responded with a status of 413 (Request Entity Too Large)
运维·服务器·bug
孤客网络科技工作室1 小时前
VMware 虚拟机使用教程及 Kali Linux 安装指南
linux·虚拟机·kali linux
。puppy2 小时前
HCIP--3实验- 链路聚合,VLAN间通讯,Super VLAN,MSTP,VRRPip配置,OSPF(静态路由,环回,缺省,空接口),NAT
运维·服务器
颇有几分姿色2 小时前
深入理解 Linux 内存管理:free 命令详解
linux·运维·服务器
光芒再现dev2 小时前
已解决,部署GPTSoVITS报错‘AsyncRequest‘ object has no attribute ‘_json_response_data‘
运维·python·gpt·语言模型·自然语言处理
AndyFrank3 小时前
mac crontab 不能使用问题简记
linux·运维·macos