文件a.txt是:
从test_ $ suffix中删除
$ a = get-content a.txt
$后缀= “TABLEA”
如何操纵变量将其设置为
从test_tableA中删除
答案 0 :(得分:33)
$a=get-content a.txt
$suffix="tableA"
$ExecutionContext.InvokeCommand.ExpandString($a)
答案 1 :(得分:19)
Invoke-Expression是等效的。
$strExpression = "5 + 5 -eq 10"
Invoke-Expression $strExpression
True
有关详细信息,请参阅http://technet.microsoft.com/en-us/library/ee176880.aspx。
答案 2 :(得分:2)
这是一种方式。双引号here-string中的变量会自动替换。请确保您的输入文件符合here-strings的PS规则。
function convertto-herestring {
begin {$temp_h_string = '@"' + "`n"}
process {$temp_h_string += $_ + "`n"}
end {
$temp_h_string += '"@'
iex $temp_h_string
}
}
$suffix = "tableA"
get-content testfile.txt
delete from test_$suffix
get-content testfile.txt | convertto-herestring
delete from test_tableA