最初に文字列をスクリプトブロックに変換する必要があります
$scriptBlock = [Scriptblock]::Create($string)
例:
$remoteCommand = @" Import-Module ActiveDirectory New-ADOrganizationalUnit -name "@ $scriptBlock = [Scriptblock]::Create($remoteCommand) Invoke-Command -ComputerName AD01 -ScriptBlock $scriptBlock
あなたもこのための機能を作ることができます
<# Function to Convert a String into a Script Block #> function ConvertScriptBlock { Param( [Parameter( Mandatory = $true, ParameterSetName = '', ValueFromPipeline = $true)] [string]$string ) $scriptBlock = [scriptblock]::Create($string) return $scriptBlock }
翻訳者からの追加:
コマンドはセミコロンでリストできます
$sb = 'get-process; dir'
そのように使用することができます
# $sb= '$admin = [ADSI]"WinNT://localhost/admin,User"; $admin.SetPassword( "' + $new_pass + '" )'