Skip to content

博客管理脚本文档

这是一套现代化的博客管理工具,用于替代原来的简陋脚本,提供更强大的功能和更好的用户体验。

🚀 快速开始

环境设置

bash
# 安装依赖
pnpm run setup

# 或者手动安装
pnpm install
pip3 install pyyaml  # Python 依赖

基本使用

bash
# 使用统一管理脚本
pnpm run blog <command>

# 或者直接使用 Python 脚本
python3 scripts/blog.py <command>

📝 文章管理

创建新文章

bash
# 使用统一脚本
pnpm run blog new daily      # 创建日常文章
pnpm run blog new study      # 创建学习笔记
pnpm run blog new life       # 创建生活随想

# 或者直接使用
pnpm run new daily
python3 scripts/addblog.py daily

功能特点:

  • ✅ 自动生成带时间戳的文件名
  • ✅ 创建标准的 frontmatter 模板
  • ✅ 自动打开编辑器 (支持配置)
  • ✅ 自动更新分类索引页面
  • ✅ 支持多种分类

博客统计分析

bash
# 总览统计
pnpm run blog stats overview

# 最近文章
pnpm run blog stats recent
pnpm run blog stats recent --limit 20

# 分类统计
pnpm run blog stats category daily
pnpm run blog stats category study
pnpm run blog stats category life

# SEO 检查
pnpm run blog stats seo

# 查找重复内容
pnpm run blog stats duplicates

统计功能:

  • 📊 文章数量、字数统计
  • 📁 分类和年份分布
  • 🏷️ 标签使用频率
  • 🔍 SEO 问题检测
  • 🔄 重复内容检查

🛠️ 开发工具

开发环境

bash
# 启动开发服务器 (自动打开浏览器)
pnpm run blog dev
pnpm run dev

# 启动开发服务器 (不打开浏览器)
pnpm run blog dev --no-open

构建和预览

bash
# 构建生产版本
pnpm run blog build
pnpm run build

# 预览构建结果
pnpm run blog preview
pnpm run preview

# 清理构建产物
pnpm run blog clean

项目信息

bash
# 显示项目信息
pnpm run blog stats overview
python3 scripts/dev.py info

🚀 部署发布

全量部署

bash
# 部署到所有平台 (GitHub + Gitee + 自定义服务器)
pnpm run blog deploy
pnpm run deploy

选择性部署

bash
# 跳过 GitHub Pages
pnpm run blog deploy --no-github

# 跳过 Gitee Pages
pnpm run blog deploy --no-gitee

# 跳过构建步骤 (使用现有构建产物)
pnpm run blog deploy --skip-build

# 强制部署 (跳过 Git 状态检查)
pnpm run blog deploy --force

部署特点:

  • ✅ 自动构建和优化
  • ✅ 多平台同步部署
  • ✅ 构建前检查和备份
  • ✅ 详细的部署日志
  • ✅ 错误恢复机制
  • ✅ 远程服务器触发更新

📁 脚本文件说明

核心脚本

  • blog.py - 统一管理脚本,所有功能的入口
  • addblog.py - 文章创建脚本,替代原来的简陋版本
  • publish.sh - 部署脚本,支持多平台和错误处理
  • config.py - 配置文件,统一管理所有设置

辅助脚本

  • dev.py - 开发环境管理
  • blog-stats.py - 博客统计和分析
  • README.md - 使用文档

⚙️ 配置说明

编辑器配置

bash
# 设置默认编辑器
export EDITOR=code     # VS Code
export EDITOR=vim      # Vim
export EDITOR=nvim     # Neovim

Giscus 评论配置

  1. 访问 giscus.app
  2. 配置你的 GitHub 仓库
  3. 复制配置到 src/config/giscus.js

部署配置

修改 scripts/config.py 中的部署设置:

python
DEPLOY_CONFIG = {
    "github_repo": "[email protected]:your-username/your-repo.git",
    "gitee_repo": "[email protected]:your-username/your-repo.git",
    "remote_server": "your-domain.com",
    "remote_script": "~/update-script.sh"
}

🆚 对比原脚本的改进

addblog.py 改进

功能原版本新版本
错误处理❌ 基础✅ 完善的异常处理
配置管理❌ 硬编码✅ 统一配置文件
文件模板❌ 简单✅ 完整的 frontmatter
编辑器支持❌ 固定 nvim✅ 可配置编辑器
索引更新❌ 修改 README✅ 更新 Vue 组件
日志输出❌ 无✅ 彩色日志和进度提示

publish.sh 改进

功能原版本新版本
包管理器❌ yarn✅ pnpm
错误处理❌ 基础✅ 完善的错误处理和回滚
构建检查❌ 无✅ 依赖检查、Git 状态检查
部署选项❌ 全部部署✅ 灵活的部署选项
日志输出❌ 简单✅ 彩色日志和详细统计
备份机制❌ 无✅ 自动备份和恢复

🔧 故障排除

常见问题

  1. Python 脚本执行失败

    bash
    # 检查 Python 版本 (需要 3.6+)
    python3 --version
    
    # 安装缺失的依赖
    pip3 install pyyaml
  2. 权限问题

    bash
    # 设置脚本可执行权限
    chmod +x scripts/*.py scripts/*.sh
  3. Git 部署失败

    bash
    # 检查 SSH 密钥配置
    ssh -T [email protected]
    ssh -T [email protected]
  4. 构建失败

    bash
    # 清理并重新安装依赖
    rm -rf node_modules pnpm-lock.yaml
    pnpm install

调试模式

bash
# 查看详细的构建日志
pnpm run build --verbose

# 查看详细的部署日志
bash -x scripts/publish.sh

📖 更多示例

完整的工作流程

bash
# 1. 创建新文章
pnpm run blog new daily

# 2. 启动开发服务器预览
pnpm run dev

# 3. 查看统计信息
pnpm run blog stats overview

# 4. SEO 检查
pnpm run blog stats seo

# 5. 部署发布
pnpm run deploy

自动化脚本示例

bash
#!/bin/bash
# 自动化写作和发布流程

# 创建新文章
pnpm run blog new study

# 等待编辑完成
read -p "文章编辑完成后按回车继续..."

# SEO 检查
pnpm run blog stats seo

# 部署
pnpm run deploy

现在你的博客管理脚本已经完全现代化了!🎉

最后更新于:

本站所有文章遵循CC BY 4.0许可协议