その他

【Mac】ターミナルでssh接続したときにデザインを変える方法

この記事は約2分で読めます。

こんにちは、ツジです。
突然ですが、ターミナルでssh接続した時に他のターミナルウィンドウと差別化したい時はありませんか?

今回はssh接続をしたときにターミナルウィンドウのデザインを変更する方法を紹介します。

バッシュファイルを作成する

まずはsshコマンドが実行された際に、実行される処理に関するバッシュファイル(ファイル名は「ssh-change-color.sh」としています)を任意の場所に作成します。
内容は以下のとおりです。

#!/bin/bash
set_profile() {
  /usr/bin/osascript -e "tell application \"Terminal\" to set current settings of first window to settings set \"$1\""
}

set_profile "Red Sands"
ssh $@
set_profile "Basic"

aliasコマンドとして扱う

バッシュファイルを作成したら、自身が使っているコマンドシェルファイル(例:.zshrc)に以下の内容を書き加えましょう。

alias ssh='~/ssh-change-color.sh'

書き込んだ後は、以下のコマンドを忘れずに実行するようにしましょう。

$ source [書き込んだコマンドシェルファイル]

作成したバッシュファイルに関する簡単な解説

#!/bin/bash
set_profile() {
  /usr/bin/osascript -e "tell application \"Terminal\" to set current settings of first window to settings set \"$1\""
}

set_profile "Red Sands"
ssh $@
set_profile "Basic"

『set_profile』でターミナルのデザインを指定しています。今回の場合はssh接続しているときは”Red Sands”というデザインを適用させて、ssh接続状態でなくなったら”Basic”にするような処理となっています。

このデザインに関しては、ターミナルの設定から確認することができます。