2013-09-12 4 views
0

У меня есть следующий сценарий PowerShell Script, в котором используется ScriptBlock. Я пытаюсь использовать переменную $pw1, но она, похоже, не использует ее правильно. Как использовать переменные в ScriptBlock или строке?PowerShell - Пытается использовать переменную в ScriptBlock с цитируемой строкой?

Start-Job -ScriptBlock {Start-Process "C:\Users\Mark\Desktop\putty.exe" -argumentlist "-ssh [email protected] -pw $pw1 -m C:\Users\Mark\Desktop\commands.txt -t" -passthru -Wait ;cmd.exe /c start cmd /k PSlist} 

ответ

0

Не уверен, чтобы полностью понять всю putty вызова, но если вы хотите поставить свой пароль аргумент (-PW), который в $pw1 переменных вызывающем скрипте, вы должны использовать аргументы:

Start-Job -ScriptBlock {Start-Process "C:\Users\Mark\Desktop\putty.exe" -argumentlist "-ssh [email protected] -pw $args[0] -m C:\Users\Mark\Desktop\commands.txt -t" -passthru -Wait ;cmd.exe /c start cmd /k PSlist} -ArgumentList $pw1 

$args[0] будет содержать значение $pw1.

Смежные вопросы