Jak uruchomić skrypt PowerShell?
Jak uruchomić skrypt PowerShell?
- mam skrypt o nazwie myscript. ps1
- mam zainstalowane wszystkie niezbędne frameworki
- I set that execution policy thing
- postępowałem zgodnie z instrukcjami na tej stronie pomocy MSDN
i staram się to prowadzić w ten sposób:
powershell.exe 'C:\my_path\yada_yada\run_import_script.ps1'
(z lub bez--noexit
)
Który nie zwraca dokładnie nic, z wyjątkiem tego, że nazwa pliku jest output.
Żadnego błędu, żadnej wiadomości, nic. Kiedy dodam -noexit
, to samo zdarza się, ale pozostaję w PowerShell i muszę wyjść ręcznie.
Plik ps1 ma uruchamiać program i zwracać poziom błędu zależny od wyniku tego programu. Ale jestem całkiem pewien, że nawet nie dojdę tam jeszcze.
Co robię źle?13 answers
- Uruchom Windows PowerShell i poczekaj chwilę, aż pojawi się wiersz polecenia PS
-
Przejdź do katalogu, w którym znajduje się skrypt
PS> cd C:\my_path\yada_yada\ (enter)
-
Wykonaj skrypt:
PS> .\run_import_script.ps1 (enter)
Co mi umyka??
Lub: możesz uruchomić skrypt PowerShell z cmd.exe
w następujący sposób:
powershell -noexit "& ""C:\my_path\yada_yada\run_import_script.ps1""" (enter)
Zgodnie z tym blog post tutaj
Lub możesz nawet uruchomić skrypt Powershell z aplikacji C# :-)
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-17 06:34:45
Jeśli korzystasz z PowerShell 2.0, użyj PowerShell.parametr EXE-File do wywołania skryptu z innego środowiska jak cmd.exe np.:
Powershell.exe -File C:\my_path\yada_yada\run_import_script.ps1
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-06-23 21:48:18
Jeśli chcesz uruchomić skrypt bez modyfikowania domyślnych zasad wykonywania skryptów, możesz użyć przełącznika bypass podczas uruchamiania Windows PowerShell.
powershell [-noexit] -executionpolicy bypass -File <Filename>
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-01-30 22:23:06
Typ:
powershell -executionpolicy bypass -File .\Test.ps1
Uwaga: tutaj Test.ps1
znajduje się skrypt PowerShell.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-03-26 19:21:27
Miałem ten sam problem i próbowałem... W końcu użyłem:
powershell.exe -noexit "& 'c:\Data\ScheduledScripts\ShutdownVM.ps1'"
I umieścić ten wiersz w pliku wsadowym, i to działa.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-11-30 23:27:07
Jeśli masz tylko PowerShell 1.0 , to wygląda na to, że wystarczy:
powershell -command - < c:\mypath\myscript.ps1
Wysyła plik skryptu do Wiersza poleceń PowerShell.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-11-30 23:27:46
Łatwym sposobem jest użycie PowerShell ISE, otwarcie skryptu, uruchomienie i wywołanie skryptu, funkcji...
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-03-02 10:29:56
Użycie pliku cmd (BAT):
@echo off
color 1F
echo.
C:\Windows\system32\WindowsPowerShell\v1.0\powershell.exe -ExecutionPolicy Bypass -File "PrepareEnvironment.ps1"
:EOF
echo Waiting seconds
timeout /t 10 /nobreak > NUL
Jeśli potrzebujesz Uruchom jako administrator :
- zrobić skrót wskazujący na wiersz polecenia (nazwałem go Administracyjny Wiersz Polecenia)
- otwórz właściwości skrótu i przejdź do zakładki kompatybilność
- w sekcji Poziom uprawnień upewnij się, że pole wyboru obok opcji "Uruchom ten program jako administrator" jest zaznaczone
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-11-17 09:04:06
Całkiem proste. Kliknij prawym przyciskiem myszy plik. ps1 w systemie Windows, a w menu powłoki Kliknij Uruchom za pomocą PowerShell .
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-03-02 10:27:56
-
Podaj ścieżkę skryptu, czyli ustawienie ścieżki przez cmd:
$> . c:\program file\prog.ps1
-
Uruchom funkcję punktu wejścia PowerShell:
Na przykład,
$> add or entry_func or main
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-11-30 23:29:00
Jeśli twój skrypt ma nazwę z rozszerzeniem .ps1
i jesteś w oknie PowerShell, po prostu uruchom ./myscript.ps1
(zakładając, że plik znajduje się w Twoim katalogu roboczym).
To prawda i tak na Windows 10 z PowerShell w wersji 5.1 i tak, i nie sądzę, że zrobiłem coś, aby to było możliwe.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-03-02 10:28:31
Jeśli chcesz uruchomić skrypt Powershell z harmonogramem zadań systemu Windows, wykonaj poniższe kroki:
-
Tworzenie zadania
Ustaw
Program/Script
NaPowershell.exe
Ustaw
Arguments
na-File "C:\xxx.ps1"
To z innego wątku odpowiedzi https://stackoverflow.com/a/23954618/3378204
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-05-24 08:07:34
Użyj parametru-File przed nazwą pliku. Cytaty sprawiają, że powershell myśli, że jest to ciąg poleceń.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-08-01 11:17:33