, поэтому я работаю над небольшим скриптом, сравнивающим два файла с использованием Get-Content.Пока что все работает, но есть одно маленькое предупреждение.Я хотел бы, чтобы скрипт выдал ошибку и остановил , если get-content для $ location не найден или запрещен.Я думал, что-то вроде оператора if для этого, но у меня возникли трудности.
if([string]::IsNullOrWhiteSpace($location)){
write-host "please input a valid path"
exit
Обновление - есть входное значение $ location, которое вы вводите, скажем, c: \ test \ test.txt.То, как работает текущий скрипт, это берет этот ввод и помещает его в «(Get-Content -Path $ location)».Если вы введете правильный путь и файл, это сработает, и скрипт продолжит работу и выдаст сообщение «Сравнение завершено».Но если вы введете местоположение и файл, который не существует, скажем, что c: \ awoieroiuaf сценарий продолжается и выдаст ошибку error- Content: Не удается найти путь 'C: \ pscript \ hashgenv4.ps1 C: \ Test2 c: \awoieroiuaf ', потому что он не существует.
И затем он говорит: «Сравнение завершено».Как я уже говорил ранее, я хотел бы сначала проверить пользовательский ввод, чтобы определить, что путь существует, прежде чем продолжать работу со сценарием.
И пробовал несколько различных методов.
}
else
{
Compare-Object -ReferenceObject $(Get-Content -Path $title2hashstorage/$sha256) -DifferenceObject $(Get-Content -Path $location)| Out-GridView
Write-host "Comparison is complete"
}
exit