$ErrorActionPreference = "Stop" $pass = ConvertTo-SecureString ("Paper123" + [char]33 + "@#") -AsPlainText -Force $cred = New-Object PSCredential("INTRANET\sysadmin", $pass) $uncRoot = "\\192.168.0.6\C$" try { New-PSDrive -Name AD2 -PSProvider FileSystem -Root $uncRoot -Credential $cred -ErrorAction Stop | Out-Null $scriptPath = "AD2:\Shares\test\scripts\Sync-FromNAS.ps1" $lines = Get-Content $scriptPath # Fix line 70 (0-indexed: 69) - the Copy-FromNAS SCP line $oldLine = $lines[69] Write-Output "OLD LINE 70: $oldLine" # The correct line should have backtick-quoted remote path and quoted local path $lines[69] = ' $result = & $SCP -O -o StrictHostKeyChecking=accept-new -o UserKnownHostsFile="C:\Shares\test\scripts\.ssh\known_hosts" "${NAS_USER}@${NAS_IP}:`"${RemotePath}`"" "$LocalPath" 2>&1' Write-Output "NEW LINE 70: $($lines[69])" # Write back Set-Content -Path $scriptPath -Value $lines Write-Output "=== LINE 70 FIXED ===" # Verify both SCP lines are now correct $verify = Get-Content $scriptPath Write-Output "=== FINAL SCP LINES ===" for ($i = 0; $i -lt $verify.Count; $i++) { if ($verify[$i] -match "result.*SCP") { Write-Output ("{0,3}: {1}" -f ($i+1), $verify[$i].TrimEnd()) } } Remove-PSDrive -Name AD2 -ErrorAction SilentlyContinue } catch { Write-Output "ERROR: $_" Write-Output $_.ScriptStackTrace }