这是一个调用阿里云 Python SDK 的终端用户界面(TUI)工具,基于 Textual 构建,用于在终端中完成账单查询与 DNS 解析管理等常用操作。
- 流量统计:查询指定月份的公网流出流量(IPv4 / IPv6 / 合计),明细表格 + 20GB 免费额度双色进度条
- 账单归纳:按产品归纳指定月份的消费金额,附消费汇总面板(总额 / 产品数 / 占比最高项)
- DNS 管理:管理域名解析记录,支持搜索、排序以及增删改、启用/禁用
- 现代化 TUI:艺术字首页、统一键位、页面内折叠菜单、状态栏与非阻塞异步加载
- 加入 ECS 控制 的相关内容
- 加入 OOS 控制 的相关内容
| 场景 | 快捷键 | 作用 |
|---|---|---|
| 全局 | Tab |
切换焦点 |
Ctrl+Q |
任意界面直接退出程序 | |
Home / End / PgUp / PgDn |
页面滚动到顶 / 底 / 翻页(焦点在文本框时自动让位给文本框) | |
| 主菜单 | 1 / 2 / 3 / 4 / 5 |
直达流量查询 / 账单归纳 / DNS 管理 / 设置 / 退出 |
↑ / ↓ · 回车 |
移动光标 · 确认 | |
Esc / Ctrl+C |
退出程序 | |
| 功能页 | Ctrl+R |
刷新数据 |
Esc / Ctrl+C |
返回上一级(折叠菜单打开时优先关闭菜单) | |
↑ / ↓ · 回车 |
表格内移动光标 · 操作所选行 | |
/ |
聚焦搜索框(实时模糊过滤) | |
← / → |
月份选择器切换账期(焦点在选择器上时) | |
| DNS 记录页 | Ctrl+N / Ctrl+E / Ctrl+D |
新增 / 编辑 / 删除(作用于当前行) |
| 弹窗 | Esc / Ctrl+C |
取消并关闭 |
回车 |
提交表单或确认 |
鼠标全程可用:按钮 / 选项 / 列表行一律单击即执行(表格行单击即进入下一级或打开编辑),滚轮滚动光标所在的滚动区域。 焦点进入输入框即切换为文本编辑模式:使用控件原生编辑键(
Home/End、Ctrl+Shift+A全选、Ctrl+X/C/V剪切 / 复制 / 粘贴),底部提示栏同步切换,此时Ctrl+R刷新让位给输入框;Ctrl+C有选中则复制、无选中则返回 / 取消。
pip install aliyun-controller安装后,可以直接使用 aliyunctl 命令运行程序:
aliyunctl需要 Python 3.10 及以上版本。
-
克隆此项目到本地:
git clone <项目地址> cd aliyun-controller
-
创建虚拟环境(推荐):
python -m venv venv source venv/bin/activate # Linux/Mac # 或在 Windows 上: venv\Scripts\activate
-
安装依赖:
pip install -e . -
创建阿里云 RAM 用户并授权:
- 登录阿里云控制台。
- 进入 RAM 访问控制。
- 在左侧导航栏选择 用户 > 创建用户。
- 设置登录名称和显示名称,勾选 为该用户自动生成 AccessKey。
- 创建成功后,请务必保存好 AccessKey ID 和 AccessKey Secret,它们只显示一次。
- 为新创建的 RAM 用户授权:
- 在用户详情页,点击 添加权限。
- 选择 AliyunBSSReadOnlyAccess 和 AliyunDNSFullAccess 权限。
- 点击 确定 完成授权。
-
配置阿里云访问密钥: 默认情况下,程序会在
~/.config/aliyun-controller目录下查找配置文件。 首次运行或配置文件不存在时,程序会自动进入 Textual 配置向导,依次填写:access_key_idaccess_key_secret
填写完成后会自动生成
config.yaml。之后也可从主菜单的「设置」中随时修改访问密钥。你也可以使用
--dir/-D参数指定配置文件所在的目录:aliyunctl -D /path/to/your/config/dir
安装后,可以直接使用 aliyunctl 命令运行程序:
aliyunctl程序将显示 Textual 交互界面,你可以选择以下功能:
- 流量查询:查看指定月份的公网总流出流量
- 账单归纳:查看指定月份按产品汇总的账单明细
- DNS 解析管理:管理域名解析记录
- 设置:查看 / 修改阿里云访问密钥
你也可以使用 --dir/-D 参数指定配置文件所在的目录:
aliyunctl -D /path/to/your/config/dir- 进入后默认查询当前月份的账单
- 顶栏的
◀ YYYY-MM ▶月份选择器可逐月切换(点击月份还会弹出年份 + 12 月的快捷选择浮层),切换后自动重新查询(范围:2020-01 至当月) - 流量页附带 20GB 免费额度进度条:额度内绿色,超出部分红色(量程随用量自适应)
- 查询在后台线程执行,界面不会阻塞;结果以汇总面板 + 明细表格展示
- 选择要管理的域名,进入解析记录列表
- 支持按主机记录 / 记录值模糊筛选
- 支持按创建时间、二级域名、首字母排序(正序 / 逆序)
- 回车可对所选记录执行编辑、启用 / 禁用、删除操作,并可新增记录
为了正常使用所有功能,你的阿里云 RAM 用户记得开放以下权限:
AliyunBSSReadOnlyAccess:用于账单查询AliyunDNSFullAccess:用于 DNS 管理
本项目遵循 Python 3.10+ 规范。
git clone https://github.com/Moha-Master/Aliyun-Controller.git
cd Aliyun-Controller
python -m venv venv
source venv/bin/activate
pip install -e ".[dev]"MIT