Planowanie skryptu Powershell

3

Mam skrypt PowerShell, który chcę uruchomić jako zadanie harmonogramu.

Skrypt działa świetnie, gdy wykonuję go ręcznie, ale kiedy uruchamiam zadanie harmonogramu, zadanie kończy się niepowodzeniem z komunikatem „nie można uruchomić”

Zaplanuj konfigurację zadania:

Uruchom: powershell -command "& 'ScriptName.ps1'” Uruchom za: Uruchom jako:

Jest to zaplanowane na Windows Server 2003 i działa PowerShell 1.

Scott
źródło
do czego służy znak ampersand? Kiedy chcę je debugować, konfiguruję zadanie do interakcji z pulpitem i uruchamiam powłokę cmd. Stamtąd uruchamiam wiersz poleceń i naprawiam wszystko, aż zadziała. Chodzi o to, że najpierw możesz mieć pewność uprawnień i konfiguracji problemów interaktywnie.
uSlackr

Odpowiedzi:

2
  1. spróbuj użyć pełnej ścieżki do ScriptName.ps1

  2. czy skrypt zależy od czegokolwiek w twoim profilu $? jeśli tak, może nie zostać załadowane podczas uruchamiania jako zadanie harmonogramu, więc upewnij się, że załadowałeś moduł lub ustawiłeś potrzebne zmienne env.

johnshen64
źródło
kiedy próbowałem użyć pełnej ścieżki, ten sam błąd.
Scott,
1
Skończyło się na tym, że musiałem użyć pełnej ścieżki zarówno skryptu, jak i samego PowerShell. Wygląda na to, że PowerShell nie był w ścieżce PATH
Scott
@ Scott, czy możesz wyjaśnić bardziej szczegółowo, co zrobiłeś.
Mowgli,
0

Odkryłem, że muszę podać pełną ścieżkę do powershell.exe i pełną ścieżkę do skryptu w polu tekstowym „Uruchom”: C:\WINDOWS\system32\WindowsPowerShell\v1.0\powershell.exe "C:\FULLPATH\MYSCRIPT.ps1"

DBolton
źródło