2025年7月

一.Shell命令自动补全的实现

1.ip 命令的自动补全是如何实现的?

1.ip命令相关补全文件

/usr/share/bash-completion/completions/ip

2.加载流程

  1. 用户进入交互式bash(终端)
  2. ~/.bashrc 中加载 /usr/share/bash-completion/bash_completion
  3. /usr/share/bash-completion/bash_completion中定义了 _completion_loader函数
  4. 当对一个命令按TAB时,如果这个命令没有补全定义,会触发_completion_loader函数,然后从/usr/share/bash-completion/completions/<command> 查找对应的补全脚本并加载。
  5. 脚本只加载一次,一旦某个命令的补全脚本被加载,它就在当前 Shell 会话里生效,不会每次 TAB 都重新加载。

- 阅读剩余部分 -

一.FastAPI是什么

FastAPI 是一个用于构建 API 服务的高性能 web 框架。

需要使用 Python 3.6+,基于标准的 Python 类型提示。

1.关键特性

  • 快速:可与 NodeJSGo 比肩的极高性能(归功于 Starlette 和 Pydantic),是最快的 Python web 框架之一。
  • 高效编码:提高功能开发速度约 200% 至 300%。
  • 更少 bug:减少约 40% 的人为错误(开发者导致)。
  • 智能:极佳的编辑器支持。处处皆可自动补全,减少调试时间。
  • 简单:设计的易于使用和学习,阅读文档的时间更短。
  • 简短:使代码重复最小化。通过不同的参数声明实现丰富功能。bug 更少。
  • 健壮:生产可用级别的代码。还有自动生成的交互式文档。
  • 标准化:基于(并完全兼容)API 的相关开放标准:OpenAPI (以前被称为 Swagger) 和 JSON Schema

- 阅读剩余部分 -

Grafana 开源版是一款开源可视化和分析软件。它允许您查询、可视化、警报和探索您的指标、日志和跟踪,无论它们存储在何处。它为您提供工具,将时间序列数据库 (TSDB) 数据转换为富有洞察力的图表和可视化效果。

下面是关于Grafana部署和升级的一些实操分享,包含:

  • 通过Docker部署Grafana
  • 升级Grafana
  • Grafana 配置
  • Grafana 迁移

- 阅读剩余部分 -