Проблема в том, что sh
использует фьючерсы и программы Clojure, которые используют фьючерсы или агенты, перед тем как выйти, когда им нечего делать, из-за того, как работает какой-то внутренний механизм.
Обойти немноговот, добавьте
(shutdown-agents)
в конце вашего сценария, который завершает эту часть оборудования.(Таким образом, это делает больше, чем обещает имя в том, что фьючерсы также затронуты.)
Обратите внимание, что это не может быть отменено и поэтому не должно использоваться в REPL.