Я проверяю CSV-файл URL для кода состояния, возвращающего пользовательский объект. После этого я хочу записать его в файл. У меня это работает правильно, но я хочу отформатировать таблицу, иначе URL-адреса будут обрезаны. Я заставил это работать, но это не добавляет это к новой линии. Кроме того, как только я получу эту работу, я бы хотел отсортировать по статусу кода, чтобы я мог получить все 404-е наверх.
Я пробовал форматировать таблицу и кучу других вещей
[pscustomobject]@{
Code = $statusCode
Date = Get-Date -f yyyyMMdd
URL = $url
} | Format-Table - Autosize
Это работает, но не создает новую строку каждый раз, как без.
Add-Type -AssemblyName System.Web
Add-Type -AssemblyName System.Web.Extensions
$inputPath = "\\Scripts\URLS\test.csv"
$outputPath = "\\Scripts\Results\statusCodeResults.txt"
$urlArray = Import-Csv -Path $inputPath | Select -ExpandProperty urls
function Get-WebStatus {
param($urlArray)
foreach ($url in $urlArray) {
try {
$request = Invoke-WebRequest -Uri $url -Method GET
$statusCode = $request.StatusCode
}
catch {
$statusCode = $_.Exception.Response.StatusCode.value__
}
[pscustomobject]@{
Code = $statusCode
Date = Get-Date -f yyyyMMdd
URL = $url
}
}
}
Get-WebStatus -urlArray $urlArray | Out-File $outputPath
Хотелось бы, чтобы это выглядело так, но URL-адреса показывались полными, а затем, в конце концов, сортировались и все 404 сверху.
Code Date URL
---- ---- ---
200 20190404 bsca.com/provider/account-tools/login/home.jhtml
200 20190404 bsca.com/provider/home.jhtml
200 20190404 bsca.com/provider/eligibility-benefits/eligib...
200 20190404 bsca.com/provider/eligibility-benefits/home.j...
200 20190404 bsca.com/provider/claims/home-auth.jhtml
200 20190404 bsca.com/provider/guidelines-resources/patien...
200 20190404 bsca.com/provider/claims/search/home.jhtml
200 20190404 bsca.com/provider/claims/policies-guidelines/...
404 20190404 bsca.com/provider/claims/view-rationale/home....
200 20190404 bsca.com/provider/guidelines-resources/home.j...