web-dev-qa-db-ja.com

powershell:ファイルから読み取られた文字列を評価する方法

ファイルa.txtは次のとおりです。

test_ $ suffixから削除

$ a = get-content a.txt

$ success = "tableA"

変数を操作して次のように設定する方法

test_tableAから削除

20
Daniel Wu
$a=get-content a.txt
$suffix="tableA"

$ExecutionContext.InvokeCommand.ExpandString($a)
34
Doug Finke

Invoke-Expressionは同等です。

$strExpression = "5 + 5 -eq 10"
Invoke-Expression $strExpression
True

詳細については、 http://technet.Microsoft.com/en-us/library/ee176880.aspx を参照してください。

21
Stephan Unrau

これが1つの方法です。二重引用符で囲まれたここの文字列内の変数は、自動的に置き換えられます。入力ファイルがヒア文字列の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
2
mjolinor