Используйте PowerShell, чтобы перезаписать все содержимое нескольких файлов * .txt одновременно - PullRequest
0 голосов
/ 10 октября 2019

Я пытаюсь написать быстрый скрипт для «сброса» некоторых файлов, которые я использую для сбора результатов из другого скрипта. Я не всегда хочу, чтобы они сбрасывались, и я не хочу, чтобы другие люди, использующие оригинальные сценарии, могли их сбросить, поэтому мне просто нужен простой сценарий, чтобы сделать это, но, похоже, ничего не могу найти ... Самая близкая вещь, которую я нашел, это, но это не совсем то, что я ищу:

Get-ChildItem "$PSScriptRoot\*.txt" -Recurse | ForEach {
(Set-Content $_ | ForEach { $_ -replace '', 'Currently no results' }) |
Set-Content $_
}

1 Ответ

0 голосов
/ 10 октября 2019

Вы можете направить Get-ChildItem вывод напрямую в Set-Content со статическим аргументом -Value, который заполняет все входные файлы одной строкой:

Get-ChildItem $PSScriptRoot\*.txt -Recurse |
  Set-Content -Value 'Currently no results' -WhatIf

-WhatIf превью операция;удалите его, чтобы фактически перезаписать содержимое файлов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...