Всякий раз, когда я пытаюсь вызвать команду из строки, я получаю синтаксическую ошибку.
Это для временной консоли для определенных пользователей, но я хочу разрешить только определенные пользовательские команды.
Я уже пробовал следующее:
& $ functionName $ paramater1 $ paramater2
Invoke-Command -ScriptBlock {$ functionName $ paramater1 $ paramater2}
Write-Host 'READY>' -NoNewline -ForegroundColor Magenta;$inputx = Read-Host;$input = $inputx.Split()
if (Get-Command $cmdName -errorAction SilentlyContinue){ # Checks if function is available
# Execute exact string
}
Что ожидается:
Скажем, мы вводим "Write-Host 'Hello World!' -NoNewLine"
Команда для выполнения: Write-Host 'Hello World!' -NoNewLine
Что возвращается:
At line:1 char:44
+ Invoke-Command -ScriptBlock {$functionName $paramater1 $paramater2}
+ ~~~~~~~~~~~
Unexpected token '$paramater1' in expression or statement.
At line:1 char:56
+ Invoke-Command -ScriptBlock {$functionName $paramater1 $paramater2}
+ ~~~~~~~~~~~
Unexpected token '$paramater2' in expression or statement.
+ CategoryInfo : ParserError: (:) [], ParentContainsErrorRecordException
+ FullyQualifiedErrorId : UnexpectedToken