Попробуй так:
trap { write-host "file not found, skipping";continue;}
$modtime = Get-ItemProperty c:\manoj -erroraction stop
На основании комментариев от OP:
Я думаю, ты неправильно понял то, что говорится в статье, на которую ты ссылался:
В этом примере мы использовали продолжает, чтобы заставить выполнение вернуться в область, в которой находится ловушка, и выполнить следующую команду.Важно отметить, что выполнение возвращается только в область действия ловушки, поэтому, если исключение было сгенерировано внутри функции или даже внутри оператора if и захвачено за ее пределами ... continue получит в конце вложенной области действия.
Итак, если вы сделаете что-то вроде этого: будет напечатано
trap{ write-host $_; continue;}
throw "blah"
write-host after
after
.
Но если вы сделаете что-то вроде этого:
trap{ write-host $_ ; continue}
function fun($f) {
throw "blah"
write-host after
}
fun
write-host "outside after"
after
НЕ будет напечатан, но будет outside after
.
В качестве альтернативы используйте блок try-catch:
try{
$modtime = (Get-ItemProperty $f -erroraction stop).LastWriteTime
write-host "if file not found then shouldn't see this"
}
catch{
write-host "file not found, skipping".
}