powershell
2017-09-05 16 views 0 likes 
0

私は作成したテキストファイルに行を追加しますが、変数の周りにテキスト引用符を入れる必要があります。変数付きの追加コンテンツ文字列引用符

私が働いている例:私は位置パラメータが見つからないというエラーを取得し

$wksname="wks12345" 
    $path = c:\scripts\file.txt 

    Add-Content $path '"DefaultUsername" =' "$wksname" 

。私は、出力をテキストファイルに次のようになりたい何

は次のとおりです。 「のDefaultUserName」=「wks12345」

任意のアイデア?

ありがとうございます!

答えて

1

使用エスケープ文字`

$wksname = "TEST123" 
write-host "`"DefaultUsername`" = `"$wksname`"" 

でしょうが、あなたに感謝、それは

$wksname="wks12345" 
$path = "c:\scripts\file.txt" 
Add-Content -Path $path -Value "`"DefaultUsername`" = `"$wksname`"" 
1

文字列の引用が間違っています。あなたは3つのパラメータを持っている

Add-Content $path '"DefaultUsername" =' "$wksname" 

$path 
'"DefaultUsername" =' 
"$wksname" 

そしてAdd-Contentが唯一の2つの位置パラメータ(-Path-Valueを)持ってここにあなたのコマンドです。 PowerShellは、使用する第3パラメータを見つけることができません。

文字列に二重引用符を使用する必要があり、文字列内の変数を展開する場合は、二重引用符をエスケープする必要があります。それを行うには2つの方法があります。

Add-Content -Path $path -Value """DefaultUsername"" = ""$wksname""" 

するか、この:エスケープシーケンスとして

Add-Content -Path $path -Value "`"DefaultUsername`" = `"$wksname`"" 
+0

のようになります。コマンドについては"のDefaultUserName" = "TEST123"

を書きました!私は何か新しいことを学んだ – MrDoe

1

を使用して、2つの連続した":このように

Add-Content $path """DefaultUsername"" = ""$wksname""" 
+0

うまく働いてくれてありがとう! – MrDoe

関連する問題