Powershell Присвоение изменений файла в переменную
Есть файл, который время от времени добавляет в себя новые записи. Нужно отследить эти изменения изменения в переменную. Вычитал, что необходимое можно получить с помощью базовой команды Get-Content -Path $global:Path -Wait -Tail 0 Эта команда прекрасно выводит необходимые значения в консоль, однако при попытке присвоения этих данных в переменную типа [string] - значение не присваивается. Присваивание делал стандартно $global:ChangedData = Get-Content -Path $global:Path -Wait -Tail 0
Такая конструкция висит в ожидании изменений в файле, но изменения не присваиваются.
Что не так в данном присваивании?
Ответы (1 шт):
Это не ответ, а лишь предложение к поиску ответа (текст не помещается в формат комментария).
Есть простой пример чтения данных фонового задания на SO. Проверка (новых) данных, которые будут получены от фонового задания, осуществляется в цикле. Отсюда получается следующий код:
$jobToRun = Start-Job -ScriptBlock { Get-Content -Path "C:\Folder\MyFile.txt" -Wait -Tail 0 }
while ( [Boolean]$( $jobToRun.JobStateInfo.state -ne "Completed" ) )
{
$diff= (Receive-Job -Job $jobToRun)
Write-Output $diff
## Start-Sleep 1
}