| source /workspace/echoloc/.bashrc | |
| conda activate mlasr | |
| set -e | |
| # ================= 变量配置区 ================= | |
| # 基础路径 | |
| BASE_DIR="/workspace/echoloc/codes/TTS-Framework/logs/vstyle" | |
| # 临时打包路径 | |
| TEMP_DIR="$HOME/hf_temp_archive" | |
| # Hugging Face 仓库 ID | |
| HF_REPO="ScorpioMiku/OwnHiES" | |
| # 🌟 在这里指定你需要打包的多个文件夹名称(注意用空格或换行隔开,名称外加引号) | |
| TARGET_FOLDERS=( | |
| "ds3_vstyle_controls_3_17" | |
| "ds3_vad_textrefine_emochange" | |
| ) | |
| # ================= 执行逻辑 ================= | |
| echo "🧹 清理并重新创建临时文件夹: ${TEMP_DIR} ..." | |
| rm -rf "${TEMP_DIR}" | |
| mkdir -p "${TEMP_DIR}" | |
| echo "📂 切换到工作目录: ${BASE_DIR}" | |
| cd "${BASE_DIR}" | |
| echo "📦 开始打包并分块 (每块 40G) 以下文件夹:" | |
| for folder in "${TARGET_FOLDERS[@]}"; do | |
| # 检查文件夹是否存在,防止拼写错误导致整个流程崩溃 | |
| if [ ! -d "$folder" ]; then | |
| echo "❌ 错误: 找不到文件夹 '$folder',请检查名字是否正确!" | |
| exit 1 | |
| fi | |
| echo " - $folder" | |
| done | |
| # 核心命令:将数组里的文件夹展开并传给 tar,然后管道给 split 分块 | |
| tar -cf - "${TARGET_FOLDERS[@]}" | split -b 40G - "${TEMP_DIR}/data_part.tar." | |
| echo "🚀 打包完成,开始上传到 HuggingFace 仓库: ${HF_REPO} ..." | |
| huggingface-cli upload-large-folder "${HF_REPO}" "${TEMP_DIR}" --repo-type dataset | |
| echo "✅ 上传成功!" | |