#!/bin/sh # Auto-generate index.html navigation page based on subdirectories TARGET_DIR="${1:-.}" OUTPUT="${TARGET_DIR}/index.html" cat > "$OUTPUT" << 'HEADER' 图解算法 - 导航

📚 图解算法

知识可视化集合

HEADER # Scan subdirectories with index.html for dir in "$TARGET_DIR"/*/; do [ -d "$dir" ] || continue name=$(basename "$dir") [ "$name" = ".git" ] && continue [ "$name" = ".gitea" ] && continue [ -f "$dir/index.html" ] || continue # Try to extract title from index.html title=$(grep -oP '(?<=)[^<]+' "$dir/index.html" 2>/dev/null | head -1) [ -z "$title" ] && title="$name" echo " <a class=\"card\" href=\"/$name/\">" >> "$OUTPUT" echo " <span class=\"card-icon\">📄</span>" >> "$OUTPUT" echo " <div>" >> "$OUTPUT" echo " <div class=\"card-title\">$title</div>" >> "$OUTPUT" echo " <div class=\"card-dir\">/$name</div>" >> "$OUTPUT" echo " </div>" >> "$OUTPUT" echo " </a>" >> "$OUTPUT" done # Check if any cards were added if ! grep -q 'class="card"' "$OUTPUT"; then echo " <p class=\"empty">暂无页面</p>" >> "$OUTPUT" fi cat >> "$OUTPUT" << 'FOOTER' </div> <footer>Powered by QwenPaw · 自动生成</footer> </div> </body> </html> FOOTER