OSX のターミナルを終了時に自動で閉じたい
OSX でターミナル終了すると、こんな風に窓が残ってしまいます
例えば、 シェルスクリプトである拡張子 .command を実行したときや Linux(intel)ファイルを起動したときにこうなります
色々調べていて
defaults write com.apple.Terminal.plist ShellExitAction -int 1 |
でいいと書かれていたサイトがあったのですが、色々ダメでした
まず、 default コマンド実行するとき、拡張子である plist を付けてはいけないので、このコマンドを実行すると
~/Library/Preferences/com.apple.Terminal.plist.plist
なんてファイルが生成される事態に(笑)
で、
defaults write com.apple.Terminal ShellExitAction -int 1 |
を実行してみたのですが、効果なしでした (もちろんテーマごとの設定を無効にしてもです)
既に、ShellExitAction が設定されている場合なら、次のコマンドで設定変更可能でした。
defaults write com.apple.Terminal "Window Settings" "`defaults read com.apple.Terminal "Window Settings"|sed -e "s/hellExitAction = ./hellExitAction = 1/g" -e "s/¥"/¥¥¥¥¥"/g"`" killall Terminal |
直接plist エディタで設定値を 2から1に書き換えてもOKです(値がない場合はテーマに追加)
ただし、上のメニューから完全にターミナルを終了させる必要があります
まぁ、.command に組み込むだけなら、行の最後に
#!/bin/sh
(うにょうにょ) killall Terminal |
でOKですね
もちろんGUIで ターミナル>環境設定>変更したいテーマ>シェル>シェルの終了時>シェルが正常に終了した場合は閉じる でも同じです。
環境設定 設定 シェル
内に、ありますよ。
コマンドラインか自動処理でで変更したかったのです|・ω・)