# 项目迁移验证脚本 Write-Host "======================================" Write-Host "项目迁移验证" Write-Host "======================================" Write-Host "" # 统计文件数 Write-Host "1. 文件数量统计..." $srcFiles = (Get-ChildItem -Path "c:/Users/Admin/WorkBuddy/20260310215221" -Recurse -File -ErrorAction SilentlyContinue | Measure-Object).Count $dstFiles = (Get-ChildItem -Path "D:\project" -Recurse -File -ErrorAction SilentlyContinue | Measure-Object).Count Write-Host " 源目录: $srcFiles 个文件" Write-Host " 目标目录: $dstFiles 个文件" if ($srcFiles -eq $dstFiles) { Write-Host " [OK] 文件数量匹配" -ForegroundColor Green } else { Write-Host " [WARNING] 文件数量不匹配" -ForegroundColor Yellow } Write-Host "" # 计算大小 Write-Host "2. 文件大小统计..." $srcSize = (Get-ChildItem -Path "c:/Users/Admin/WorkBuddy/20260310215221" -Recurse -ErrorAction SilentlyContinue | Measure-Object -Property Length -Sum).Sum / 1MB $dstSize = (Get-ChildItem -Path "D:\project" -Recurse -ErrorAction SilentlyContinue | Measure-Object -Property Length -Sum).Sum / 1MB Write-Host " 源目录: $([math]::Round($srcSize, 2)) MB" Write-Host " 目标目录: $([math]::Round($dstSize, 2)) MB" if ([math]::Abs($srcSize - $dstSize) -lt 1) { Write-Host " [OK] 文件大小匹配" -ForegroundColor Green } else { Write-Host " [WARNING] 文件大小不匹配" -ForegroundColor Yellow } Write-Host "" # 验证关键文件 Write-Host "3. 关键文件验证..." $criticalFiles = @( "go.mod", "README.md", "cmd\server\main.go", "configs\config.yaml", "docker-compose.yml" ) foreach ($file in $criticalFiles) { $path = "D:\project\$file" if (Test-Path $path) { Write-Host " [OK] $file" -ForegroundColor Green } else { Write-Host " [ERROR] $file - 缺失!" -ForegroundColor Red } } Write-Host "" # 检查目录结构 Write-Host "4. 目录结构验证..." $directories = @( "cmd", "internal", "configs", "docs", "deployment", "migrations" ) foreach ($dir in $directories) { $path = "D:\project\$dir" if (Test-Path $path -PathType Container) { Write-Host " [OK] $dir\" -ForegroundColor Green } else { Write-Host " [WARNING] $dir\ - 缺失" -ForegroundColor Yellow } } Write-Host "" Write-Host "======================================" Write-Host "验证完成" Write-Host "======================================" Write-Host "" Write-Host "下一步操作:" Write-Host "1. cd D:\project" Write-Host "2. go mod verify" Write-Host "3. go build ./cmd/server" Write-Host "" Write-Host "确认无误后,可以删除C盘旧文件:" Write-Host "Remove-Item -Path 'c:/Users/Admin/WorkBuddy/20260310215221' -Recurse -Force"