block - временно блокирует доставку событий
Краткое описание
block [(--local | --global)] block --erase
Описание
block предотвращает доставку и обработку событий, сгенерированных командами fish или emit, пока блок активен.
В функциях block может быть полезен при выполнении задач, которые не должны прерываться оболочкой.
Блок можно снять. Все события, возникшие во время его активности, будут затем доставлены.
Блоки событий не следует путать с блоками кода, которые создаются с помощью begin, if, while или for
Без опций команда block работает в рамках текущей функции.
Доступны следующие опции:
- -l или --local
-
Автоматически снимает блок в конце текущего внутреннего блока кода.
- -g или --global
-
Никогда не снимает блок автоматически.
- -e или --erase
-
Снимает глобальный блок.
- -h или --help
-
Отображает справку по использованию этой команды.
Пример
# Create a function that listens for events function --on-event foo foo; echo 'foo fired'; end # Block the delivery of events block -g emit foo # No output will be produced block -e # 'foo fired' will now be printed
Примечания
События принимаются только от текущего процесса fish, так как пока нет способа отправлять события из одного процесса fish в другой.
© 2022 fish-shell developers
Licensed under the GNU General Public License, version 2.
https://fishshell.com/docs/3.5/cmds/block.html