Spaces:
Running
Running
Update sync_data.sh
Browse files- sync_data.sh +25 -7
sync_data.sh
CHANGED
|
@@ -25,20 +25,38 @@ restore_from_webdav() {
|
|
| 25 |
|
| 26 |
# 获取WebDAV上所有备份文件列表
|
| 27 |
echo "获取 WebDAV 备份文件列表..."
|
| 28 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 29 |
|
| 30 |
if [ -z "$BACKUP_LIST" ]; then
|
| 31 |
echo "未找到任何备份文件"
|
|
|
|
| 32 |
rm -rf "$RESTORE_DIR"
|
| 33 |
return 1
|
| 34 |
fi
|
| 35 |
|
| 36 |
-
echo "找到以下备份文件:"
|
| 37 |
-
echo "$BACKUP_LIST" | head -5 | while read file; do echo " - $file"; done
|
| 38 |
-
if [ $(echo "$BACKUP_LIST" | wc -l) -gt 5 ]; then
|
| 39 |
-
echo " ... 等共 $(echo "$BACKUP_LIST" | wc -l) 个文件"
|
| 40 |
-
fi
|
| 41 |
-
|
| 42 |
# 尝试下载最新的备份文件
|
| 43 |
LATEST_BACKUP=$(echo "$BACKUP_LIST" | head -1)
|
| 44 |
echo "尝试下载最新备份: $LATEST_BACKUP"
|
|
|
|
| 25 |
|
| 26 |
# 获取WebDAV上所有备份文件列表
|
| 27 |
echo "获取 WebDAV 备份文件列表..."
|
| 28 |
+
|
| 29 |
+
# 获取原始响应
|
| 30 |
+
RAW_RESPONSE=$(curl -s --user "$WEBDAV_USERNAME:$WEBDAV_PASSWORD" "$WEBDAV_URL/")
|
| 31 |
+
|
| 32 |
+
# 显示调试信息
|
| 33 |
+
echo "调试: WebDAV 响应长度 $(echo "$RAW_RESPONSE" | wc -c) 字符"
|
| 34 |
+
echo "调试: 响应前500字符:"
|
| 35 |
+
echo "$RAW_RESPONSE" | head -c 500
|
| 36 |
+
echo ""
|
| 37 |
+
echo "调试: 查找所有包含 'mcp_backup' 的行:"
|
| 38 |
+
echo "$RAW_RESPONSE" | grep -i mcp_backup || echo " (未找到包含 mcp_backup 的行)"
|
| 39 |
+
echo ""
|
| 40 |
+
|
| 41 |
+
# 原始的匹配方式
|
| 42 |
+
BACKUP_LIST=$(echo "$RAW_RESPONSE" | grep -o 'mcp_backup_[0-9]*_[0-9]*\.tar\.gz' | sort -r)
|
| 43 |
+
|
| 44 |
+
echo "调试: 使用原始正则表达式找到 $(echo "$BACKUP_LIST" | grep -c mcp_backup 2>/dev/null || echo 0) 个文件"
|
| 45 |
+
if [ -n "$BACKUP_LIST" ]; then
|
| 46 |
+
echo "找到以下备份文件:"
|
| 47 |
+
echo "$BACKUP_LIST" | head -5 | while read file; do echo " - $file"; done
|
| 48 |
+
if [ $(echo "$BACKUP_LIST" | wc -l) -gt 5 ]; then
|
| 49 |
+
echo " ... 等共 $(echo "$BACKUP_LIST" | wc -l) 个文件"
|
| 50 |
+
fi
|
| 51 |
+
fi
|
| 52 |
|
| 53 |
if [ -z "$BACKUP_LIST" ]; then
|
| 54 |
echo "未找到任何备份文件"
|
| 55 |
+
echo "请检查以上调试信息,确认 WebDAV 响应格式"
|
| 56 |
rm -rf "$RESTORE_DIR"
|
| 57 |
return 1
|
| 58 |
fi
|
| 59 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 60 |
# 尝试下载最新的备份文件
|
| 61 |
LATEST_BACKUP=$(echo "$BACKUP_LIST" | head -1)
|
| 62 |
echo "尝试下载最新备份: $LATEST_BACKUP"
|