PowerShell изменяет содержимое текстового файла на Get-Content
или переменную на Set-Content
.
Это скрипт PowerShell для компиляции группы файлов и форматирования их в один текстовый файл, эта часть проверяет, равен ли новый файл старому, но, согласно сравнению, никогда не совпадает. Я пробовал возиться с такими вещами, как создание нового var в виде строкового массива, как get-content.
$files = Get-ChildItem -path "./dir" | Where-Object -FilterScript {$_.Name -match '[A-J]'}
$var = @()
foreach ($file in $files){
$filePath = "dir\" + $file;
$fileContent = Get-Content $filepath
$var += $fileContent
}
$firstLine = '"this" "issen" "da" "first"'
$var1 = '"abc" "def" "12" "6"'
$var2 = '"456" "def" "12" "4"'
$newContent = $firstLine,$var,$var1,$var2
$oldContent = Get-Content './File.txt'
if (-not (Compare-Object $oldContent $newContent)) {
Write-Host Nothing new.
} else {
Write-Host Something new
Set-Content './File.txt' -value $newContent
}
Set-Content './File.txt' -value $newContent
pause
При сравнении $newContent
с $oldContent
, который просто $newContent
сохраняется и извлекается из текстового файла, они не идентичны. Они должны быть, верно?
Текстовые файлы, собранные из ./dir, выглядят так:
a00.txt
a12 bc23 abc
b00.txt
a12 bc23 abg