Выход из текущего терминала в скрипте

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

alias mp='java -jar myprogram.jar & && kill $(echo $$)'

кажется, что он не может убить себя. Рабочая версия 12.04.

1 ответ

Решение

Попробуй это:

alias mp='java -jar myprogram.jar & && kill -SIGHUP $(echo $$)'

Я на самом деле не пробовал всю вашу команду, но добавив -SIGHUP чтобы команда kill закрыла мой терминал.

Со страницы Википедии о сигналах Unix:

Сигнал SIGHUP отправляется процессу, когда его управляющий терминал закрыт. Первоначально он был разработан для уведомления о сбое последовательной линии (зависание). В современных системах этот сигнал обычно означает, что управляющий псевдо или виртуальный терминал закрыт.[3] Многие демоны перезагружают свои файлы конфигурации и снова открывают свои лог-файлы вместо выхода при получении этого сигнала.[4] nohup - это команда, которая заставляет команду игнорировать сигнал.

Другие вопросы по тегам