Spec-Zone.ru › Fish 3.5

trap - выполнение действия при получении оболочкой сигнала

Синтаксис

trap [OPTIONS] [[ARG] REASON ... ]

Описание

trap — это обёртка вокруг фреймворка доставки событий fish. Она существует для обратной совместимости с оболочками POSIX. Для других целей рекомендуется определять обработчик событий обработчик события.

Доступны следующие параметры:

ARG

Команда, которая должна быть выполнена при доставке сигнала.

REASON

Имя события для отслеживания. Например, сигнал, такой как INT или SIGINT, или специальный символ EXIT.

-l или --list-signals

Выводит список имён сигналов.

-p или --print

Выводит все определённые обработчики сигналов.

-h или --help

Отображает справку по использованию этой команды.

Если ARG и REASON оба указаны, ARG — это команда, которая будет выполнена, когда произойдёт событие, указанное REASON (например, сигнал будет доставлен).

Если ARG отсутствует (и есть единственный REASON) или -, каждый указанный сигнал сбрасывается до своего первоначального состояния (значения, которое он имел при входе в оболочку). Если ARG — это пустая строка, то оболочка и вызываемые ею команды игнорируют сигнал, указанный каждым REASON.

Если ARG отсутствует и -p указан, то команды trap, связанные с каждым REASON, отображаются. Если аргументы не указаны или указан только -p, то trap печатает список команд, связанных с каждым сигналом.

Имена сигналов нечувствительны к регистру, и префикс SIG является необязательным. Отслеживание сигнала предотвратит выход fish в ответ на этот сигнал.

Код выхода равен 1, если какой-либо REASON недействителен; в противном случае trap возвращает 0.

Пример

trap "status --print-stack-trace" SIGUSR1
# Prints a stack trace each time the SIGUSR1 signal is sent to the shell.

© 2022 fish-shell developers
Licensed under the GNU General Public License, version 2.
https://fishshell.com/docs/3.5/cmds/trap.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API