最近はGoogle検索の代わりに Perplexity AI を使うことが増えている。調べものの一発目をPerplexityに投げて、参照元をたどりながら裏を取る、という使い方が定着しつつある感じだ。
今回はその流れで、「macOSのシステム設定を移行するコマンドとその手順」をPerplexityに質問してみた。=defaults= コマンド自体は前から名前だけは知っていたんだけど、ドメインの調べ方からエクスポート・インポートまでひととおりまとまった形で聞いたのは初めてだったので、備忘としてそのまま載せておく。
defaultsコマンドで利用可能なドメインを確認する
macOSのdefaultsコマンドでエクスポートできるドメイン名とその内容を一覧にするには、まずターミナルで以下のコマンドを使用して利用可能なドメインを取得します。
defaults domainsこのコマンドを実行すると、利用可能なドメインのリストが表示されます。各ドメインに対して、次のようにして内容を確認できます。
defaults read ドメイン名以下は一般的なmacOSのドメインとその内容の例です。
一般的なmacOSのドメイン一覧#
| ドメイン名 | 内容の例 |
|---|---|
| com.apple.finder | Finderの設定(表示オプションなど) |
| com.apple.dock | Dockの設定(位置、大きさなど) |
| com.apple.systempreferences | システム環境設定全般 |
| NSGlobalDomain | グローバル設定(フォントサイズ、言語など) |
| com.apple.screensaver | スクリーンセーバーの設定 |
| com.apple.mail | Mailアプリの設定(署名、フォルダ表示など) |
| com.apple.iTunes | iTunesの設定(ライブラリオプションなど) |
| com.apple.Safari | Safariブラウザの設定(プライバシー、履歴など) |
注意点:
- 各ドメインには多くのキーと値が含まれており、具体的な内容は
defaults read ドメイン名コマンドで確認できます。 defaults export ドメイン名 -コマンドを使用することで、そのドメインの設定をエクスポートすることも可能です。
この方法で、macOS上で利用可能なすべてのドメインとその内容を確認し、必要に応じてエクスポートできます。
設定のエクスポートとインポート手順
macOSの設定を新しいPCに反映させるためには、defaultsコマンドを使用して設定をエクスポートし、新しいPCでインポートする手順が必要です。以下にその具体的な手順を示します。
設定のエクスポート#
- ターミナルを開く。
- 設定をエクスポートするために、以下のコマンドを実行します。ここでは例として
com.apple.finderドメインをエクスポートします。
defaults export com.apple.finder ~/Desktop/finder.plistこのコマンドは、Finderの設定を finder.plist というファイルとしてデスクトップに保存します。
3. 必要な他のドメインも同様にエクスポートします。例えば、DockやSafariの設定もエクスポートする場合は、次のようにします。
defaults export com.apple.dock ~/Desktop/dock.plist
defaults export com.apple.safari ~/Desktop/safari.plist設定のインポート#
新しいPCで設定を反映させるためには、エクスポートした.plistファイルをインポートします。
- エクスポートしたファイルを新しいPCに転送します(USBメモリやクラウドストレージなど)。
- ターミナルを開く。
- 以下のコマンドを実行して設定をインポートします。例としてFinderの設定をインポートする場合、
defaults import com.apple.finder ~/Desktop/finder.plist- 他のドメインも同様にインポートします。
defaults import com.apple.dock ~/Desktop/dock.plist
defaults import com.apple.safari ~/Desktop/safari.plist- アプリケーションを再起動する必要がある場合があります。例えば、FinderやDockの場合は次のコマンドで再起動できます。
killall Finder
killall Dockこれにより、新しいPCに古いPCからの設定が適用されます。必要なドメインについては、defaults domainsコマンドで確認できます。
ざっと聞いた感じ、GUIでちまちま設定し直すよりは断然速そうだ。ただ defaults export はドメイン単位でしか吐き出せないので、乗り換えのたびに何のドメインをエクスポートすべきか調べるのが地味に面倒そうではある。とりあえずこの記事をメモ代わりに残しておいて、次に環境を作り直すタイミングで実際に試してみようと思う。



