Обработка прерывания клавиатуры, выполнение блока конца

У меня есть функция powershell, который обрабатывает список файлов. Я используюbegin, process а такжеend блоки для этого:

begin {
    # prepate some stuff
}
process {
    # process each file
}
end {
    # clean up
}

Теперь, когда я ударилCtrl + C,, весь сценарий просто заканчивается прямо в том месте, где он был. Это не проблема для части процесса, поскольку она будет вносить постоянные изменения только в последнюю команду.

Однако я все еще хочу выполнить то, что вend блок, чтобы немного его очистить, и распечатать статистику о файлах, которые удалось обработать.

Есть ли чистый способ отлавливать прерывания клавиатуры, сохраняя структуру начала / процесса / конца?

Ответы на вопрос(2)

Ваш ответ на вопрос