文字列変数に格納されたコマンド文字列を、コマンドとして実行する方法を以下に記します。
Linuxなどであれば、evalコマンドに相当します。
以下にInvoke-Expressionコマンドレットを使用した動作例を記します。
PS D:\> $calc="1+2+3+4+5+6+7+8+9+10" PS D:\> $calc 1+2+3+4+5+6+7+8+9+10 PS D:\> $calc.GetType() IsPublic IsSerial Name BaseType -------- -------- ---- -------- True True String System.Object PS D:\> Invoke-Expression $calc 55
PS D:\> $target="c:\"
PS D:\> $cmd = "get-childitem $target"
PS D:\> Invoke-Expression $cmd
ディレクトリ: C:\
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 2015/11/21 21:23 Brother
d----- 2015/09/10 15:50 Logs
d----- 2015/10/30 14:48 PerfLogs
d-r--- 2016/01/28 21:42 Program Files
d-r--- 2015/11/14 23:33 Users
d----- 2016/01/16 23:52 Windows
d----- 2015/11/21 22:09 Windows.old
-a---- 2012/07/26 15:52 24 autoexec.bat
-a---- 2012/07/26 15:52 10 config.sys
以上、文字列変数に格納されたコマンド文字列をコマンドとして実行できるInvoke-Expressionコマンドレットの紹介でした。