Вам нужны две вещи: точечный источник сценария (который (насколько мне известно) похож на импорт python) и subprocess.call.
import subprocess
subprocess.call(["C:\\WINDOWS\\system32\\WindowsPowerShell\\v1.0\\powershell.exe", ". \"./SamplePowershell\";", "&hello"])
Итак, что здесь происходит, так это то, что мы запускаем powershell, говорим ему импортировать ваш скрипт и используем точку с запятой для завершения этого оператора. Затем мы можем выполнить больше команд, а именно привет.
Вы также хотите добавить параметры к функциям, поэтому давайте использовать один из статьи выше (слегка измененный):
Function addOne($intIN)
{
Write-Host ($intIN + 1)
}
а затем вызовите функцию с любым параметром, который вы хотите, если powershell может обработать этот ввод. Итак, мы изменим приведенный выше python на:
import subprocess
subprocess.call(["C:\\WINDOWS\\system32\\WindowsPowerShell\\v1.0\\powershell.exe", ". \"./SamplePowershell\";", "&addOne(10)"])
это дает мне вывод:
PowerShell sample says hello.
11
Вам нужно будет отредактировать приведенное выше, чтобы включить библиотеку PowerCLI, но это должно работать.
person
solar411
schedule
29.02.2016