# MessyScript 个人实用脚本与工具合集,涵盖数学计算、文件处理、教学辅助等场景。 --- ## 数学计算 ### Python | 文件 | 说明 | |------|------| | `mathCheat.py` | **数学工具集**,命令行交互式运行。包含:错位相减法、二项分布、超几何分布、卡方独立性检验、一元线性回归、混合方差/均值、直方图分析、点/线对称变换、三点求圆方程、二元一次方程组等 | | `binomial.py` | 二项分布计算,输出期望、方差及各项概率 | | `hypergeometric.py` | 超几何分布计算,输出期望、方差及各项概率 | ### Dart | 文件 | 说明 | |------|------| | `rationalsqrt2.dart` | 实现有理数与二次根式构成的数域(`Ksqrt` / `RationalExtend` 类),支持加减乘除、化简、共轭、分母有理化、字符串解析等。需依赖 `rational` 包 | ### HTML 小工具 (`html小工具/`) | 文件 | 说明 | |------|------| | `小工具合集.html` | **数学工具套件合集**,在一个页面中集成文件加密、等差乘等比求和、统计计算、直方图、解析几何、概率分布等工具 | | `等差乘等比求和计算器.html` | 错位相减法求和计算器,支持分数输入 | | `方程数值解计算器.html` | 二分法求解方程数值解,如 `ln(x) + sin(x²)` | | `概率分布计算器.html` | 二项分布与超几何分布计算器 | | `解析几何计算工具.html` | 点关于直线对称、直线关于点/直线对称、三点求圆方程 | | `统计计算工具.html` | 卡方检验(2x2列联表)、一元线性回归、混合方差 | | `直方图计算工具.html` | 直方图统计分析:均值、方差、中位数、百分位数 | | `求导.html` | 表达式导数计算器,基于 math.js | --- ## 文件处理 ### Shell | 文件 | 说明 | |------|------| | `encrypt.sh` | AES-256-CBC 加密文件。用法:`./encrypt.sh input.txt output.txt password` | | `decrypt.sh` | AES-256-CBC 解密文件。用法:`./decrypt.sh encrypted.txt output.txt password` | | `orgnazieFolder.sh` | 按文件后缀名归类整理文件夹(默认整理 `~/Downloads`) | | `removeEmptyFolders.sh` | 递归删除目标目录下的所有空文件夹 | | `copyFast.sh` | **快速拷贝最新文件到 U 盘**。支持绑定多个 U 盘(通过 UUID)、按扩展名过滤、拷贝最新 N 个文件、自动弹出/保持挂载、插入 U 盘自动运行(udev 规则)、桌面通知等。配置文件位于 `~/.config/copyfast/config`,运行 `./copyFast.sh --help` 查看完整用法 | | `usb_wipe.sh` | **U 盘杀毒/清理脚本**。交互式彻底抹除 U 盘/移动硬盘:擦除分区表签名(MBR + 备用 GPT)、首尾关键区域置零、重建 MBR 分区表 + 单分区,支持格式化为 FAT32/exFAT/NTFS/ext4。三层确认机制防误操作。用法:`sudo ./usb_wipe.sh` | ### Python | 文件 | 说明 | |------|------| | `文件分割器.py` | PyQt5 GUI 文件拆分/合并工具,支持 AES-128-CBC 加密分块 | | `自动整理Downloads文件夹.py` | 按文件扩展名自动归类到对应子目录(图片/视频/文档/音频/编程等) | ### HTML | 文件 | 说明 | |------|------| | `html小工具/文件加密工具 - XOR Secure.html` | 浏览器端 XOR 文件加密/解密工具 | | `html小工具/文件合并工具.html` | 合并多个文本文件 | | `html小工具/密码管理.html` | 本地密码管理器 | --- ## 教学辅助 ### 座位编排 (`换座位/`) | 文件 | 说明 | |------|------| | `generate_seating.py` | 根据 Excel 学生数据(班级、姓名、性别、成绩)自动生成座位表。按分组表头定位成绩列(默认**赋分成绩**,`--score-column` 可切原始成绩),支持任意座位样式与四种配对策略,见下方用法 | | `根据模板换座位.py` | 读取 Excel 模板,将座位表中的数字编号替换为实际人名 | | `座位表.html` | 座位表 HTML 可视化展示 | | `Temp.xlsx` | 座位模板 Excel 文件 | 用法: ```bash cd 换座位 # 分层排布:优生集中,差生正前或正后方必有优生,同桌同性 python generate_seating.py 排行榜.xlsx -c 高补55 -s 2333 -t good-with-good-advance # 其他策略:good-with-good(好+好)/ good-with-bad(好+差)/ random(随机) python generate_seating.py 排行榜.xlsx -c 高补55 -s 2222 -t good-with-good # 一次生成 5 份候选(每份都通过校验),再用 --seed 固定选中的那份 python generate_seating.py 排行榜.xlsx -c 高补55 -s 2333 -t good-with-good-advance -n 5 --seed 42 ``` `-s` 座位样式:每个数字是一组的宽度,如 `2333` = 每排 4 组、分别坐 2/3/3/3 人。 `good-with-good-advance` 策略:按成绩排名前 1/3 为优生、后 1/3 为差生(`--good-ratio` / `--bad-ratio` 可调),**排的层次按「优-差-中」循环**,因此每排差生的正前方正好是优生排;空位由优生排与其正后方差生排按「同组同列」配对挖出,不会出现差生正前方变空位。生成后会自动校验同桌同性、差生前后有优生、落座人数,并在控制台打印每排构成。 依赖:`openpyxl`。 ### 成绩分析 (`小分表/`) | 文件 | 说明 | |------|------| | `excel.sh/main.sh` | Shell 版小分表工具主流程:筛选→计算平均→排序→格式化输出 | | `excel.sh/filter.sh` | 按列筛选数据 | | `excel.sh/average.sh` | 计算指定列的平均分 | | `excel.sh/sort.sh` | 按班级排序 | | `excel.sh/output.sh` | 格式化输出结果 | | `python版/main.py` | PyQt5 GUI 版小分表工具,支持 Excel 导入、分组汇总、图表展示 | | `小分表.html` | 网页版小分表可视化展示 | ### 姓名牌生成 (`姓名牌生成/`) | 文件 | 说明 | |------|------| | `生成姓名牌.py` | 读取 Excel 名单(自动识别"班级""姓名"列),按班级生成折叠三角姓名牌 Word 文档:每人一页、正反两面(浮动文本框),姓名 100pt 黑体,含班级标语行与座右铭。支持多班级分组、自定义座右铭、复用自定义模板 | | `姓名牌_模板.docx` | 姓名牌模板(一页、姓名占位"张三")。可打开修改字体/颜色/文本框位置后,用 `--模板` 参数复用 | 用法: ```bash cd 姓名牌生成 python 生成姓名牌.py 名单.xlsx # 自动识别班级/姓名列,按班分组输出 python 生成姓名牌.py 名单.xlsx --班级 31 # 单列名单(无班级列)时指定班级 python 生成姓名牌.py 名单.xlsx --座右铭 "天道酬勤 厚积薄发" python 生成姓名牌.py 名单.xlsx --模板 我的模板.docx ``` 依赖:`openpyxl`、`python-docx`、`lxml`。脚本自包含,可拷到任意目录运行;模板查找顺序:`--模板` 指定 → 脚本/当前目录的 `姓名牌_模板.docx` → 内置版式构建。 ### 其他 | 文件 | 说明 | |------|------| | `AtName.py` | 从支付记录文本中匹配学生姓名,自动揪出未交费学生 | | `convert2one.py` | 将高考数学真题 Markdown 文档拆分为独立题目文件(含元数据、Obisidian callout 答案折叠) | | `快捷键.py` | 配合 Snipaste 截图工具,一键截图并自动粘贴到 PPT | | `txt文本提取数据.py` | 从 QQ 聊天记录文本中提取各班级应到/实到人数 | --- ## 界面美化 | 文件 | 说明 | |------|------| | `seafile.css` | Seafile Phycat 亮色主题(Sakura 风格),基于 Obsidian Phycat 主题移植 | --- ## InkOS 写作辅助 配合 [inkos](https://github.com/Narcooo/inkos)(AI 长篇小说写作 CLI)使用,用原子命令组装完整的章节写入管线。 ### Shell | 文件 | 说明 | |------|------| | `inkos-write-next-atomic.sh` | **InkOS 原子写下一章**。用原子命令(`plan` → `compose` → `draft` → `audit` → `revise` → `polish`)替代直接调用 `inkos write next`,支持交互式检查点确认草稿、审计不通过自动修订(最多 3 轮)、多种修订模式(spot-fix / rewrite / rework / anti-detect)。依赖:`inkos`、`jq`、`less` | 用法: ```bash # 自动检测作品,交互式输入创作引导 ./inkos-write-next-atomic.sh # 指定作品 ID 和创作引导 ./inkos-write-next-atomic.sh my-novel "主角在雨夜中独自前行,回忆往事" # 查看帮助 ./inkos-write-next-atomic.sh --help ``` 环境变量: - `INKOS_LLM_MODEL` — LLM 模型(默认 `deepseek-v3.2-exp`) - `INKOS_LLM_BASE_URL` — API 端点(默认 `https://platform.shuyanai.com/v1`) --- ## 其他 | 文件 | 说明 | |------|------| | `大纲设计工具.html` | 小说大纲设计工具,支持树形结构编辑章节、拖拽排序、本地持久化 | | `综合素质表脚本.7z` | 综合素质评价表格处理脚本(压缩包) | | `html小工具/双重验证密码生成器-显示密钥版本-六个数字.7z` | 六位数字双重验证密码生成器(压缩包) |