2016-09-15 17 views
0

私はpowershellを使って特定のスクリプトにコード行を自動的に追加しています。以下の例を参照してください:powershellの置換文字列を破る

$a -replace '<div class="ef-column1 bodyContent" id="column1">', '<div class="ef-column1 body-content" id="column1"> @RenderSection("ColumnMainHeader", false)' 

@RenderSection部分が新しい行にする必要があります。だから私は@ RenderSectionの前にnを追加しようとしましたが、これは新しいラインに@RenderSectionを置く代わりにn @ RenderSectionを作成します。

私は 'r'n @ RenderSectionも試しましたが、これと同じ効果があります。 'nの間に'を置くことはどちらもうまくいきません。

+0

を(https://blogs.technet.microsoft.com/heyscriptingguy/2014/09/07/powertip-new-lines-with-powershell /) – BenH

+0

私は墓を使用しています ' – 2hTu2

答えて

2

問題は正面の一重引用符で、「n」をエスケープするのではなく、文字を1つにすることです。

二重引用符を使用して、式の二重引用符をすべてエスケープしてください:[?あなたは、単一引用符やダニを使用しています]

$a -replace '<div class="ef-column1 bodyContent" id="column1">', "<div class=`"ef-column1 body-content`" id=`"column1`"> `[email protected](`"ColumnMainHeader`", false)" 
+0

これは、ありがとう – 2hTu2