0
저는 PowerShell 스크립팅을 처음 사용합니다. 필자는 powershell major version 5를 사용하여 스크립트를 개발하려고했습니다. 제 스크립트의 목적은 템플릿 파일의 일부 문자열 리터럴을 일부 문자열로 대체하는 것입니다. 문자열 리터럴 중 하나는 파일의 내용으로 대체됩니다. 위의
$ReleaseScript = Get-Content $SourceFile -Raw
(Get-Content $ChangeSetTemplatefile -Raw) |
ForEach-Object {
$_ -replace '<insert_script_here>', $ReleaseScript `
-replace '<username>' , $UserName
}
| Set-Content $CSDestinationFile"
은 $ ReleaseScript 자체에 파일 내용이 _ $이있는 경우를 제외하고 잘 작동을 대체합니다. 이스케이프 문자를 사용하여 문자열 바꾸기 내용을 바꾸거나 다른 방법으로 목표를 달성하지 못하도록 할 수 있습니까?
사용'$$'A * 하나에 * 문자열을 대체 -quoted. [regex reference] (https://msdn.microsoft.com/en-us/library/az24scfc (v = vs.110) .aspx # 대체)를 참조하십시오. 나는이 문제를 완전히 이해할 수 있을지 모르겠다. 나는 대답으로 이것을 게시하지 않을 것이다. – wOxxOm
사실, 문자열 리터럴을 대체하는 것은 문자열 대체 메서드를 사용합니다 :'$ _. replace ('string1', 'string2')' – wOxxOm