Объединение содержания текстовых файлов в PowerShell
Иногда возникает потребность объединить содержание нескольких текстовых файлов в один. Если таких файлов несколько, то можно это сделать вручную. Но если их десятки или сотни, а выбираются они по набору заданных критериев, то лучше автоматизировать такую задачу, тем более, что в PowerShell она решается в одну строку.
Я приведу два примера, по-разному работающих с содержанием целевого файла: в первом варианте произойдёт перезапись содержания целевого файла, во втором варианте - к его содержанию будут добавлены новые данные.
# Вариант 1
Set-Content -Path $env:HOMEPATH/Documents/MyTexts.txt -Value (Get-Content -Path $env:HOMEPATH/Documents/MyTexts/*.txt)
# Вариант 2
Add-Content -Path $env:HOMEPATH/Documents/MyTexts.txt -Value (Get-Content -Path $env:HOMEPATH/Documents/MyTexts/*.txt)
В обоих вариант происходит объединение содержания всех найденных файлов с расширением .txt
в директории $env:HOMEPATH/Documents/MyTexts
с сохранением в файл $env:HOMEPATH/Documents/MyTexts.txt
.
Узнать подробнее об используемых командлетах PowerShell можно в официальной справке Microsoft:
Это очередной практический пример того, как одна строка и два командлета PowerShell экономят массу времени и избавляют пользователя от выполнения рутинной работы.