macOS Catalinaでターミナルコマンドライン(「exit」)を使用してターミナルアプリを閉じる方法

Aug 16 2020

ターミナルのコマンドラインを使用してターミナルを閉じたい。

しかし、exitコマンドを入力すると、ターミナルはセッションをログアウトするだけで、アプリウィンドウを閉じません。アプリを閉じる方法はありますか?

macOS Catalina10.15.6を実行しています。

回答

17 user3439894 Aug 16 2020 at 10:50

ターミナル>環境設定... >プロファイル>シェルのデフォルトの設定シェルが終了は:です:ないウィンドウを閉じます

これは次のように変更できます。ウィンドウを閉じる

次に、exit コマンドウィンドウを閉じます


編集した質問に対処するために編集します。

あなたはクローズしたい場合は、ウィンドウを使用してexit コマンドを使用すると、自動的かつ優雅に閉じたい場合は、しかし、この答えの最初の部分で提案されているように、あなたが行うことができますターミナルだけでなく、あなたの一環として、スクリプトまたはの代わりに、exit コマンドとしてあなたの質問に示されている場合、あなたは以下を行うことができます:

まず、スクリプトエディタで次のAppleScriptコードのを使用して、簡単なAppleScript アプリケーションを作成します。

tell application "Terminal" to if (busy of windows) does not contain true then quit

メインのApplicationsフォルダにQuitTerminalなどの名前のアプリケーションとして保存します

保存後、ターミナルを開き、QuitTerminalなどを開いて、[システム環境設定] > [セキュリティとプライバシー] > [プライバシー]でアクセス許可の許可をトリガーします。

これが完了すると、スクリプトの最後またはexit コマンドの代わりに次を使用できます。

open -a "OuitTerminal"

あなたの質問に示されているコマンドに基づく例:

/Users/harikrishna/Desktop/youtube.sh ; open -a "OuitTerminal"

これは、ターミナルのどのウィンドウにも実行中のプロセスがない場合にのみターミナルを閉じます。

注:DockOuitTerminalの表示などを表示したくない場合は、ターミナルで次のコマンドを使用してアプリケーションを変更できます。

defaults write '/Applications/OuitTerminal.app/Contents/Info.plist' LSUIElement -bool yes

実行中のプロセスを気にしない場合は、;の代わりにを使用してスクリプトまたはコマンドからターミナルを強制的に閉じることができます。ただし、これは面倒なので、上記の内容よりも使用することはお勧めしません。killall Terminalexit