Function Stop-Server { param ( [Parameter(Mandatory=$true)] [string] $server_name ) Write-Host "Stopping $server_name" # 如果存在具有相同名称的 PowerShell Job,将其终止 $existing_job = Get-Job -Name $server_name -ErrorAction SilentlyContinue if ($null -ne $existing_job) { Write-Host "Terminating job for $server_name" Stop-Job -Name $server_name Remove-Job -Name $server_name } else { Write-Host "No job found for $server_name" } } # 列出所有服务器目录 $server_dirs = "backend", "canteen", "data-transfer", "home-user-auth", "inventory", "map-library", "orders", "product", "product-model", "product-template", "shopping-cart-confirmation", "upload", "webset" # 停止每个服务器的 PowerShell Job foreach ($server_dir in $server_dirs) { Stop-Server -server_name $server_dir }