Я новичок в сценариях Powershell и прошел учебное пособие PowerShell, чтобы выполнить свои текущие требования к сценариям.
Я пытаюсь добавить восклицательный знак в строку путем сопоставления с шаблоном.У меня есть файл test.default, подобный приведенному ниже:
"/AgentSetup/__type__"
"/AgentSetup/__name__"
"/AgentSetup/preloadedKs"
"/AgentSetup/preloadedKMsArch"
"/AgentSetup/loadOnlyPreloadedKMs"
Больше таких строк в файле
Итак, я пытаюсь добавить восклицательный знак в начало строки, сопоставив, например,если я ищу "/ AgentSetup / preloadedKs" = {REPLACE = ""}, то в файле это должно выглядеть так:
"/AgentSetup/__type__"
"/AgentSetup/__name__"
"/AgentSetup/preloadedKs"
!"/AgentSetup/defaultAccount"
"/AgentSetup/preloadedKMsArch"
"/AgentSetup/loadOnlyPreloadedKMs"
Я пытался выполнить следующие команды, чтобы добиться этого, но безуспешно
$TEST = "C:\Asset\config.default"
$Pattern = "/AgentSetup/defaultAccount"
$var = "!" + (Select-String -Path $TEST -pattern $Pattern | Out-String)
$var
$var + (Get-Content $TEST -Raw) | Set-Content $TEST
Вышеприведенные команды не просто добавляют восклицательный знак, но и добавляют повторяющуюся запись в файл следующим образом:
!
test.default:103:"/AgentSetup/defaultAccount"
Я прошел учебные пособия powershell Add-Content
и Select-String
, даже когда искал Get-Content
.Пожалуйста, направьте меня в правильном направлении, чтобы я мог достичь этого, это было бы полезно.