Я пытаюсь запустить простой скрипт powershell из пакетного файла. После поиска в Интернете советуем установить политику с помощью Set-ExecutionPolicy.Скрипт Powershell не запускается из командного файла
Я сделал это и используя Get-ExecutionPolicy, политика была изменена.
Однако запуск этого командного файла приводит к диалогу «Открыть с», а не к выполнению сценария.
Batch:
%SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe ^&'./script.psl'
Powershell:
Write-Host "This is a message"
Я выборку как на Windows 7 и Server 2008 R2. Оба имеют одинаковый результат. Что мне не хватает?
Я получаю сообщение об ошибке, делая это: Processing -file «» ./script.psl «» не удалось, потому что файл не имеет расширение».PS1. Укажите действительное имя файла сценария PowerShell и повторите попытку. – Tezza
В любом случае вы не можете указать имя файла, указанное одиночными кавычками. По крайней мере, не из 'cmd'. Правила синтаксического анализа PowerShell применяются * внутри * оболочки, но не при вызове с аргументами. – Joey
@Tezza. Вы получите 'failed, потому что у файла нет расширения .ps1 ', если, как указывал @Joey, вы указываете путь сценария в командной строке ** или **, вы указываете скрипт с расширением, отличным от '.ps1'. В этом случае оба условия верны. Обратите внимание, что в вашем вопросе и распространенном на этот ответ расширение скрипта является '.psl' вместо' .ps1' (последний символ является строчным буквой 'L', а не цифрой' 1'). – BACON