|
|
@@ -7,16 +7,16 @@
|
|
|
# 适合:需要看起来在干活、又不想真干活的时候 😏
|
|
|
#
|
|
|
# 用法:
|
|
|
-# ./tool-moyu.sh [文件] # 从文件读取,无限循环摸鱼
|
|
|
-# ./tool-moyu.sh -n 3 文件 # 只循环 3 遍
|
|
|
-# ./tool-moyu.sh < session.log # 从标准输入读取
|
|
|
+# ./tool-moyu.sh # 用内置内容摸鱼(默认)
|
|
|
+# ./tool-moyu.sh -n 3 # 循环 3 遍
|
|
|
+# ./tool-moyu.sh [文件] # 从文件读取(覆盖内置内容)
|
|
|
# ./tool-moyu.sh --help # 帮助
|
|
|
#
|
|
|
# 选项:
|
|
|
# -n N 循环 N 次(默认无限)
|
|
|
# -d MS 每行间隔毫秒(默认随机 80-400)
|
|
|
# -t 逐个字符「打字」效果
|
|
|
-# -s 静默模式:不打印假状态行,只循环原内容
|
|
|
+# -s 静默模式:不打印假状态行,只循环内容
|
|
|
# =============================================================
|
|
|
|
|
|
set -euo pipefail
|
|
|
@@ -43,12 +43,32 @@ while [ $# -gt 0 ]; do
|
|
|
esac
|
|
|
done
|
|
|
|
|
|
-# 内容来源:文件参数或 stdin
|
|
|
-CONTENT="${1:-/dev/stdin}"
|
|
|
-if [ -f "$CONTENT" ]; then
|
|
|
+# 内置摸鱼内容(模拟一段 AI 工作汇报,可被文件参数覆盖)
|
|
|
+BUILTIN_CONTENT=$(cat <<'EOF'
|
|
|
+[13:00] 收到需求:搭建 CI/CD 部署链路
|
|
|
+[13:05] 🤖 分析项目结构,识别 Gogs 仓库与子模块布局
|
|
|
+[13:12] 🧠 评估方案:服务器资源紧张,改用本地校验+SSH 部署
|
|
|
+[13:20] ✍️ 编写 validate.sh / build.sh / deploy.sh 脚本
|
|
|
+[13:35] ⚙️ 本地构建部署包,交叉编译后端 + 前端 dist
|
|
|
+[13:48] 🔍 修复迁移目录缺失导致的无限重启问题
|
|
|
+[14:00] 📝 编写 aaPanel 部署手册,固化端口与域名
|
|
|
+[14:15] ✅ 本地冒烟测试通过:MySQL 8.0 迁移链路正常
|
|
|
+[14:30] 🚀 部署 admin 后端到测试机,服务 active
|
|
|
+[14:40] 🌐 前端自动化部署完成,HTTP 200
|
|
|
+[14:50] 📊 汇总进度,更新 backlog 留档
|
|
|
+[15:00] 💬 下一步:部署 backend-app,建立 client/worker 站点
|
|
|
+EOF
|
|
|
+)
|
|
|
+
|
|
|
+# 内容来源:文件参数 > 内置内容
|
|
|
+CONTENT="${1:-}"
|
|
|
+if [ -n "$CONTENT" ] && [ -f "$CONTENT" ]; then
|
|
|
mapfile -t LINES < "$CONTENT"
|
|
|
+elif [ -n "$CONTENT" ] && [ "$CONTENT" != "-" ]; then
|
|
|
+ echo "文件不存在: $CONTENT,改用内置内容。" >&2
|
|
|
+ mapfile -t LINES <<< "$BUILTIN_CONTENT"
|
|
|
else
|
|
|
- mapfile -t LINES
|
|
|
+ mapfile -t LINES <<< "$BUILTIN_CONTENT"
|
|
|
fi
|
|
|
[ "${#LINES[@]}" -eq 0 ] && { echo "内容为空,摸不了鱼。" >&2; exit 1; }
|
|
|
|