Elegancko zamknij aplikację z wiersza poleceń w systemie Mac OS X
Łagodne zamykanie aplikacji zwykle odbywa się za pomocą odpowiedniego menu aplikacji, wybierając opcję „Zamknij”, ale GUI systemu Mac jest oczywiście niedostępne z wiersza poleceń systemu Mac OS X. Kiedy więc większość użytkowników wiersza poleceń ma do czynienia z koniecznością wyjścia z aplikacji, skończyć za pomocą polecenia „kill”, aby zakończyć proces i wymusić zamknięcie aplikacji, zamiast wydawać „miękkie” zabicie.Oczywistym problemem związanym z zamykaniem aplikacji jest to, że podczas zamykania aplikacji możesz utracić dane w tym procesie, a nawet pamięci podręczne przywracania sesji mogą nie być odpowiednie do przywrócenia danych. Dlatego zawsze, gdy jest to możliwe, najlepiej jest, gdy użytkownicy zamiast tego płynnie zamykają aplikację.
Chociaż nie jest to szczególnie dobrze znane, możesz wysłać standardowy sygnał wyjścia do dowolnej aplikacji GUI systemu Mac OS X z wiersza poleceń za pomocą polecenia osascript. Jest dość łatwy w użyciu i właśnie tym zajmiemy się tutaj.
Jak płynnie zamknąć aplikacje z terminala w systemie Mac OS X za pomocą osascript
Ponownie spowoduje to wysłanie do aplikacji standardowego sygnału wyjścia zamiast sygnału zabicia (zakończenia). Oznacza to również, że aplikacja docelowa nie zostanie wymuszona, jeśli istnieją niezapisane dane bez monitowania użytkownika o wprowadzenie danych (chyba że masz włączone ustawienie automatycznego zapisywania dla systemu Mac OS X, a aplikacja nie monituje użytkownika w wyniku).
Podstawowa składnia wysyłania standardowego sygnału zakończenia do aplikacji GUI w systemie Mac OS X z Terminala jest następująca:
"osascript -e &39;zakończ aplikację NAZWA APLIKACJI&39;"
Na przykład, aby zamknąć Kalendarz z wiersza poleceń, zastąp NAZWA APLIKACJI słowem „Kalendarz”
"osascript -e &39;zakończ aplikację Kalendarz&39;"
Ponieważ Kalendarz synchronizuje się i nie ma opcji zapisywania, podczas próby zamknięcia aplikacji nie zostanie wyświetlone standardowe okno dialogowe zapisywania. W przypadku aplikacji, które mają opcje zapisywania, a system Mac OS X ma wyłączone automatyczne zapisywanie, okno dialogowe zapisywania zostanie przywołane jak zwykle.
Kolejną zaletą używania osascript do płynnego zamykania aplikacji jest to, że możesz podać rzeczywistą nazwę aplikacji, która jest znacznie łatwiejsza do zapamiętania i nieco bardziej przyjazna dla użytkownika niż poleganie wyłącznie na numerach identyfikacyjnych procesów, które pasują do polecenie zabij.Należy pamiętać, że nowoczesne wersje systemu Mac OS X oferują ulepszone polecenie zabijania, które jest bardziej przyjazne dla użytkownika, znane jako pkill.
Możesz użyć tego w skrypcie bash, aby zamknąć aplikacje z wiersza poleceń, a nawet zmodyfikować go, aby zachowywał się podobnie do sztuczki „Zamknij wszystkie otwarte aplikacje” z Automatorem, którą omówiliśmy jakiś czas temu.