Seite 1 von 1

Erstellen einer geplanten PowerShell-Aufgabe

Veröffentlicht: 10. August 2021 – 15:57 Uhr
von Discovery
Hallo,
ich muss auf Windows 2012-Servern mit WAPT eine geplante Aufgabe erstellen.
Jede geplante Aufgabe muss eine Datei namens servername_sftp-backup.ps1 ausführen.
Ich kann den Dateinamen scheinbar nicht als Parameter übergeben; Ich glaube, die Anführungszeichen verursachen Probleme.
Die Fehlermeldung ist unklar.
Wie kann ich den Dateinamen (Servername + 'ps1') in einer Variablen speichern und diese Variable an den Befehl `run_powershell()` übergeben?

Ich habe Folgendes versucht:
`run_powershell('$pcname=[Environment]::MachineName')`, `
run_powershell('$file="c:\tx-backups\script\"+$pcname+"_sftp-backup.ps1")`, `
run_powershell('$Action = "New-ScheduledTaskAction -Execute "Powershell.exe " -Argument "-ExcutionPolicy Bypass -NoProfile -File"+ $file"'+'"')`, `
run_powershell('$Trigger = New-ScheduledTaskTrigger -Daily -At 1am')`, `
run_powershell('$Principal = New-ScheduledTaskPrincipal -LogonType S4U'
run_powershell('$Settings = New-ScheduledTaskSettingsSet')
run_powershell('$Task = New-ScheduledTask -Action $Action -Trigger $Trigger -Settings $Settings')
run_powershell('Register-ScheduledTask -TaskName "Backup SFTP" -Action $Action -Trigger $Trigger -Settings $Settings -Principal $Principal')

Der Fehler, den ich erhalte:

run_powershell('$Action="New-ScheduledTaskAction -Execute "Powershell.exe" -Argument "-ExecutionPolicy Bypass -NoProfile -File "+$file+'"'')
^
SyntaxError: EOL while scanning string literal
SyntaxError: EOL while scanning string literal (setup.py, line 29)

Vielen Dank für Ihre Hilfe