Запуск одной команды за другой в zsh при нажатии Ctrl-C

Недавно я переехал в zsh из bash (на OSX). У меня есть псевдоним bash, который я использовал для запуска одной программы, а затем другой (даже если предыдущая программа выходит с ошибкой) в bash. Я не могу решить, как это сделать в zsh.

bash alias, который я хотел бы повторить:

 gulp ; say "Gulp has crashed" 

Кто-нибудь знает, как переписать это в zsh?

Редактировать:

Разница между zsh и bash которую я получаю, такова; с нажатием кнопки Bash ctrl-c когда gulp работает, останавливает глоток, а затем переходит к следующей команде.

в Zsh нажатие ctrl-c кажется, останавливает целую командную строку.

Цель моего использования этой строки – получить звуковое предупреждение, когда gulp перестает работать в фоновом режиме. (для пользователей, не являющихся малыми, команда say – это текст для преобразования конвертора)

One Solution collect form web for “Запуск одной команды за другой в zsh при нажатии Ctrl-C”

Вместо этого я предлагаю использовать функцию:

 mygulp () { trap : INT; gulp || say "Gulp has crashed"; } 

trap поймает Ctrl-C (сигнал прерывания) и запустит команду (т.е. ничего).

Обратите внимание, что || вместо ; – таким образом, если gulp выйдет нормально (вы не нажимали ctrl-c), тогда ничего не происходит, но если код выхода не равен нулю, тогда начнется команда.

Эта функция должна работать как в bash и в zsh , в дальнейшем вы можете удалить последнюю ; перед закрытием правого кронштейна.

  • Изменение темы Zsh в Android Studio
  • Вернитесь к пути, когда возобновите работу с фона
  • сценарий к cd во многие каталоги и выполнить команду
  • Источник .bashrc в zsh без печати какого-либо вывода
  • Странный вывод на многострочной команде в Китти?
  • align rprompt с подсказкой вверху
  • Как настроить режим vi в режиме ZSH для сохранения состояния между командами?
  • zsh удалить часть приглашения
  • Развернуть переменную в определении функции в zsh
  • Папка псевдонимов исполняемых файлов с добавленным ключевым словом
  • поиск файлов с использованием группового разрешения
  • Linux и Unix - лучшая ОС в мире.