Вместо
Out-File -FilePath "C:\output\$host-$EndDate.json"
Используйте оператор формата (-f) :
$EndDate = get-date -UFormat "%Y-%m-%d %H:%M:%S"
$myFileName = 'C:\output\{0}-{1}.json' -f $host, ($EndDate.ToString() -replace ':','') -replace '\s',''
Out-File -filepath $myFileName
Также вам может потребоваться использовать Команда New-Item вместо Out-File, если ваш каталог еще не существует.Кажется, ваша ошибка указывает на то, что каталог может быть недоступен при создании файла.
New-Item -path $myFileName -Force
Как отметил Билл Стюарт, $host
является зарезервированным словом , поэтому будьте осторожны, используяэто.