Как автоматически закрыть терминал после выполнения скрипта?

#!/bin/bash
cd ~/Desktop/sh-scripts/
./start.sh &
// ??? how to close Terminal

2 ответа2

2

Предположим, вы вызываете этот код скрипта, который вы разместили в другой оболочке. Если вы хотите, чтобы Terminal.app был завершен, вы можете использовать простую команду AppleScript :

osascript -e 'tell application "Terminal" to quit'

То же самое касается iTerm2 или любого другого приложения. Просто измените его имя в "Terminal" . Или, чтобы закрыть переднее приложение, как упоминает @Lri:

osascript -e 'quit app (path to frontmost application as text)'

Если вместо этого ваш скрипт выполняется не в интерактивном режиме, то его должно быть достаточно для его exit . Окно терминала не закроется, если вы не измените настройки терминала:

0

Если вы хотите, чтобы ваш bash-скрипт (например, исполняемый файл .sh ) убивал приложение терминала OS X после выполнения скрипта, просто добавьте эту строку в конец вашего скрипта:

kill `ps -A | grep -w Terminal.app | grep -v grep | awk '{print $1}'`

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .