Watch

Mac OS Xのコマンドラインから壁紙を設定する

Mac OS Xのコマンドラインから壁紙を設定する

Macのコマンドラインから壁紙を設定する

OS XのコマンドラインからMacの壁紙画像を設定したいと思ったことはありませんか? 実は、ターミナルからデスクトップの背景画像を変更できるのです。これは、セットアップスクリプトへの組み込み、リモート管理、自動化など、さまざまな場面で役立ちます。


もちろん、ほとんどの Mac ユーザーの場合、OS X のシステム環境設定から、またはファイル システム内のどこかにある画像を右クリックして壁紙を設定します。これは間違いなく、Mac のデスクトップの背景を変更する最も高速で効率的な手段ですが、もう少し手を動かして操作したい人や、コマンド ラインからデスクトップの背景画像を調整する方法を知る必要がある人のために、読み進めてください。

OS X のコマンド ラインからデスクトップの壁紙を変更するには、osascript コマンドを使用します。これは実際には AppleScript のコマンド ライン フロントエンドであり、構文の基本的な AppleScript で確認できます。

osascript -e 'tell application "Finder" to set desktop picture to POSIX file "/path/to/picture.jpg"'

たとえば、デスクトップ上の「cabo-san-lucas.jpg」という画像を壁紙に設定するには、次の手順を実行します。

$ osascript -e 'tell application "Finder" to set desktop picture to POSIX file "~/Desktop/cabo-san-lucas.jpg"'

確認はなく、壁紙は即座に変更されます。

これに使用するおしゃれな壁紙をお探しの場合は、こちらの壁紙コレクションを参照してください。素敵な壁紙が多数あります。

このアプローチで問題となる可能性があるのは、複数のモニターを使用している場合です。プライマリディスプレイの壁紙は変更されますが、セカンダリディスプレイの壁紙は変更されません。マルチディスプレイワークステーションの場合は、より長い回避策がほぼ確実に存在するため、適切なAppleScript構文をご存知でしたら、詳細をコメント欄にご記入ください。

ターミナルとosascriptを使った方法の方が、従来の方法で背景の壁紙を変更したり、Safariの「背景に設定」を使ったりするよりも速いでしょうか?ほとんどのユーザーにとってはそうではありませんが、コマンドラインのアプローチには、他の方法にはないいくつかの利点があります。特に、デスクトップ画像の変更をスクリプトで簡単に実行できることや、SSH経由でリモートから背景の壁紙画像を変更できることが挙げられます。これは、ネットワーク環境(またはいたずらなど)で役立ちます。