AstrBot 再尝试
本文介绍了作者在尝试使用 AstrBot 过程中的一次乌龙经历。起初作者以为安装 Shell 插件即可使用,但实际需要在后台手动启用权限开关。在好友的详细指导下,作者成功开启 Shell 功能,并通过命令查询系统内核、磁盘和内存信息,还利用 whois 命令查询好友的域名信息,体验了 AstrBot 的强大扩展能力。之后作者卸载了冗余的第三方插件,反思了技术探索中从误解到豁然开朗的过程。文章强调了安全配置的重要性、技术社区互助的价值,以及深入理解工具才能充分发挥其潜力的道理。
Shell 写的大语言模型客户端
本文介绍了 一个基于 Shell 脚本的终端聊天工具,通过调用 OpenAI API 实现与语言模型的交互。脚本首先提示用户输入 OpenAI API URL、API Key 及模型名称,并初始化一个 JSON 格式的历史记录文件。随后进入无限循环,每次读取用户输入,将用户消息追加到历史记录中,再通过 curl 发起 API 请求,从返回的 JSON 中提取模型回复并显示在终端上,同时将助手回复也更新到历史记录文件,从而实现多轮对话的上下文维护。该脚本简化了与 AI 模型的命令行交互过程,适合快速测试或二次开发。
下载 Ubuntu 壁纸脚本
本文介绍了如何使用 Shell 脚本从清华镜像源下载并提取 Ubuntu 壁纸文件。脚本首先通过 curl 获取 ubuntu-wallpapers 软件包列表,使用 grep 和 tail 提取最新版本的原生 tar.gz 压缩包文件名。接着利用 wget 下载该文件,并创建 ubuntu-wallpapers 和 temp 两个目录。然后使用 tar 解压到 temp 文件夹,再通过 find 命令查找所有 .jpg 和 .png 格式的图片文件,将它们移动到 ubuntu-wallpapers 目录中。最后删除临时目录和下载的压缩包,完成壁纸的提取与整理。整个过程自动化地从清华镜像获取 Ubuntu 官方壁纸资源,适合用于批量收集或本地备份。
Butterfly 友链存活脚本
本文介绍了如何使用一段 Shell 脚本检查指定文件中的链接存活状态。该脚本首先定义文件路径为 source/_data/link.yml ,然后判断文件是否存在,若存在则使用 grep 提取所有 https 开头的主机名,通过 sed 去除协议头,再借助 xargs 和 sh 执行 ping 命令,对每个主机发送 4 个 ICMP 包。根据 ping 结果,脚本会输出该主机“存活!”或“死亡!”。本文适用于需要定期验证博客或网站友情链接是否有效的场景,可快速检测链接的可用性,便于运维人员及时处理失效链接。
下载文件分类脚本
本文介绍了如何使用 Bash 脚本自动整理 ~/Download 目录下的文件,根据文件类型将其移动到对应的子目录中。脚本依次检查 ~/Documents、~/Pictures、~/Music、~/Videos 等目标目录是否存在,若存在则使用 find 命令匹配相应扩展名的文件(如 .txt、.docx、.jpg、.mp3、.mp4 等),并通过 -exec mv 将其移动至对应目录。该脚本实现了文档、图片、音频、视频等常见文件类型的自动分类归档,可有效避免下载文件夹杂乱无章,提升文件管理效率。
Dotfiles 备份脚本
本文介绍了一个用于自动备份配置文件的 Shell 脚本。脚本通过设置远程仓库与本地仓库路径,检查本地目录是否存在,若不存在则克隆远程仓库。随后进入本地仓库目录,将用户目录下的 .mozilla、.vimrc、.config 等配置文件复制到仓库内,并执行 git add、git commit(提交信息含当前时间)、git push 操作,从而实现配置文件的增量备份与云端同步。该脚本适用于 Linux 环境下快速备份个性化配置。
Butterfly 说说脚本
本文介绍了如何使用 Shell 脚本向 YAML 文件动态追加数据记录。脚本定义了两个函数:nofile 用于在文件不存在时创建并写入第一条记录,包含当前日期时间、固定 key 值 1 以及用户输入的内容;hadfile 则读取已有文件中的最大 key 值并自动递增,然后追加新记录。主逻辑通过检查文件是否存在来调用相应函数。该脚本适用于自动化博客或静态站点中类似说说、动态等内容的管理,实现简单且高效。

