Я пытаюсь изменить сценарий PowerShell, обнаруженный на ElegantCode.Com .Я хочу изменить его, указав большой текстовый файл HTTP-ссылок, а не называть ссылки в качестве параметра по отдельности.
После того, как скрипт проанализирует файл, я хочу, чтобы он передавал или выводил только те ссылки, которые верны в новый файл.
Я падаю на первое препятствие и даже не могу понять, как передать входной файл в качестве параметра.
Прямая ссылка на скрипт здесь
BEGIN {
}
PROCESS {
$url = $_;
$urlIsValid = $false
try
{
$request = [System.Net.WebRequest]::Create($url)
$request.Method = 'HEAD'
$response = $request.GetResponse()
$httpStatus = $response.StatusCode
$urlIsValid = ($httpStatus -eq 'OK')
$tryError = $null
$response.Close()
}
catch [System.Exception] {
$httpStatus = $null
$tryError = $_.Exception
$urlIsValid = $false;
}
$x = new-object Object | `
add-member -membertype NoteProperty -name IsValid -Value $urlIsvalid -PassThru | `
add-member -membertype NoteProperty -name Url -Value $_ -PassThru | `
add-member -membertype NoteProperty -name HttpStatus -Value $httpStatus -PassThru | `
add-member -membertype NoteProperty -name Error -Value $tryError -PassThru
$x
}
}
END {
}