Ich habe eine Textdatei mit mehr als 200 Remote-Computernamen, die durch Kommas getrennt sind. Auf jeder dieser Maschinen befinden sich Protokolldateien, die ich auf meinen Rechner herunterladen möchte. Für den Fall, dass ein Computer nicht erreichbar ist (offline), möchte ich, dass das Skript den Fehler abfängt und in eine separate Datei "fails.log" schreibt.Herunterladen von Protokolldateien von Remote-Computern mit PowerShell-Skript
Ich habe mehrere Threads gelesen und verschiedene Ansätze versucht, aber ich kann nicht scheinen, dass das Skript korrekt funktioniert. Hier ist mein letzter Versuch:
$csv = Import-Csv "C:\MasterTestGroup.txt"
foreach($item in $csv) {
try {
Copy-Item -Path ("\\" + $item + "\c$\Windows\AppLogs\LoginScript_Policy\ClearCredMgrRUN.log") -Destination ("C:\ClearCredMgr_Logs\" + $item + "_ClearCredMgr.log")
} catch {
$_ | Out-File "C:\ClearCredMgr_Logs\Failures\failures.log" -Append
}
}
Hier ist ein Ausschnitt aus der MasterTestGroup.txt Datei:
486937CPTR, 487060CPTR, 490028CPTR, 499037CPTR, 502537CPTR, 506342CPTR, 507627CPTR, 507670CPTR, ...
'Import-Csv' ist nicht für dieses Datenformat geeignet. Verwenden Sie 'Get-Content' und teilen Sie die Zeile in Kommas auf. –