【Mac】現在の気温をデスクトップに
最近やたら寒いので、Mac のデスクトップに現在の気温を表示したくなった。
やり方はいろいろあると思う。一番簡単なやり方は通知センターにある「天気」を利用することだろう。しかし、もっとこう、デスクトップにピタッと貼りつけたいのである。
なので GeekTool を使う。
GeekTool インストール
GeekTool はパワフルなデスクトップのカスタマイズツールである。下記サイトでダウンロードできる。
🔗 GeekTool
ダウンロードした zip ファイルを解凍して、アプリ本体をアプリケーションフォルダに投入すればインストールは完了だ。
右クリックの「開く」で起動する。
新規グループを作成して「Enable」にチェックをつければ、準備は完了だ。
まずは時計を表示させてみる
GeekTool は Geeklet というものを生成して、デスクトップに「Shell」、「Web」、「Log」、「Image」を表示できる。
Geeklet は左欄のアイコンをドラッグするだけで新規に作られる。
ひとまず、簡単に日付けと時間を表示させてみよう。
「Shell」は、コマンドの結果を表示してくれるギークレットだ。これをデスクトップにドラッグ&ドロップ。
コマンドは「Properties」ウィンドウの「command」に書く。
時刻を出してくれるコマンドは「date」である。
さっそくやってみる。
あっさり出力された。これでも悪くないが、せっかくなのでもっと見やすくしてみる。
date コマンドは出力のフォーマットを決められるのだ。
フォーマットの形式は「 % 」とアルファベットの組み合わせだ。必ず「 " 」で囲み、最初のフォーマットには頭にプラスをつける。
date "+%Y %m %d"
ターミナルを開いて、上記を試してみる。
「2019 01 28」と半角スペースを挟んで、きょうの日付が出力された。
「何月何日」と表示したい場合も簡単である。
date "+%m月%d日"⏎
01月28日
と、日本語もなんのそので出力してくれる。
代表的のフォーマットは以下の通りだ。
%Y | 西暦 4 桁(2019) |
%y | 西暦 2 桁(19) |
%m | 月 2 桁(01) |
%b or %h | 月 3 文字(Jan Febなど) |
%B | 月の名前(January February など) |
%d | 日 2 桁(03) |
%e | 日 1 桁(1,2,……30,31) |
%j | 今年から何日目か を示す(うるう年の大晦日なら 366) |
%H | 24 時間 2 桁(01-24) |
%k | 24 時間 1 桁(1-24) |
%I(大文字i) | 12 時間 2 桁(01-12) |
%l(小文字L) | 12 時間 1 桁(1-12) |
%M | 分 2 桁(00-59) |
%S | 秒 2 桁(00-59) |
%s | 1970年1月1日から 何秒たったか(UNIX Time) |
%a | 曜日 3 文字(Mon Tueなど) |
%A | 曜日名(Monday Tuesdayなど) |
%U | 週番号 日曜起点(00-53) |
%W | 週番号 月曜起点(00-53) |
だいたいこんな感じ。
さっそく プロパティウィンドウの command 欄に date "+%m月%d日 %a"
と入力してみる。
プロパティウィンドウの下のほうにある「style」でスタイルを整える。
この辺は、他のアプリのフォントの変更とほぼ同じだ。
command 欄の下にある「Refresh every」に秒数を入力すると、その秒数でコマンドを更新してくれる。
日付だけでなく時計も同じように作った。「Refresh every」を 1 秒に設定すると秒が動く。なかなかいい感じだ。
date のフォーマットは、"+%H:%M:%S"
とした。
現在の気温を表示する
自分が住んでいる地域の、現在の気温は、ネットから取得するしか思いつかなかった。
ひとまず、天気.jp さんのお世話になることにした。
🔗 日本気象協会 tenki.jp【公式】 / 天気・地震・台風
天気.jp さんでは、アメダスのデータを公開してくれている。
まずは、以下のページで、自分の住んでいる地域に近い場所のアメダスのページを表示させる。
🔗 アメダス実況(気温) – 日本気象協会 tenki.jp
近所のアメダスには、ちゃんと現在の気温が表示されている。
このページを取得して、現在の気温だけ抜き出して、デスクトップに表示させればいい。URL アドレスをコピーしておく。
以下のようなスクリプトを考えてみた。
curl -Ss https://tenki.jp/amedas/近所のアメダス.html | grep '<li><span class="bold">現在</span> ' | sed -e 's/<[^>]*>//g' -e 's/ //' -e 's/^ *//g'
「近所のアメダス」は、実際のアドレスに書きかえていただくとして、これを実行してみる。
ちゃんと動いてくれるようだ。
フォントなどを整えて、更新間隔は 3,600 秒(一時間)としてみた。
ちなみに上記画像の、丸で囲んだ「…」をクリックすると、ちょっと大きなエディタでコマンドを編集できる。
なかなかいい感じだ。
天気.jp さんがサイトの仕様を変更したら効かなくなってしまうが、そうなったらまた考える、というものだろう。
Apple に天気の情報を提供しているらしい、The Weather Channel の場合も調べてみた。
検索窓に県名を入れたり、ローマ字で地名を入れたりして自分の住んでいるところを捜し、以下のような画面を出し、URL をコピーする。
あとは下のスクリプトの「サイトURL」を書き換えるだけだ。
kion=`curl -Ss サイトURL | grep -o "<div\ class=\"today_nowcard-temp\"><span\ class=\"\">[^>]*<sup>°</sup></span></div>" | sed -e 's/<div class="today_nowcard-temp"><span class="">//' -e 's/<sup>°<\/sup><\/span><\/div>//'`
echo '現在 '$kion'°'
2019 年 1 月現在はどうにかこれで表示される。
最近のコメント