ターミナルから Mac を設定する(defaults write コマンド等)

More than 1 year has passed since last update.

シェルスクリプトにそのまま書けるので、dotfiles に入れて、初期設定を自動化できます。


# Automatically hide or show the Dock (Dock を自動的に隠す)
defaults write autohide -bool true
# Wipe all app icons from the Dock (Dock に標準で入っている全てのアプリを消す、Finder とごみ箱は消えない)
defaults write persistent-apps -array
# Set the icon size (アイコンサイズの設定)
defaults write tilesize -int 55
# Magnificate the Dock (Dock の拡大機能を入にする)
defaults write magnification -bool true

Mission Control

# Hot corners (Mission Control のホットコーナーの設定)
# Possible values:
#  0: no-op
#  2: Mission Control
#  3: Show application windows
#  4: Desktop
#  5: Start screen saver
#  6: Disable screen saver
#  7: Dashboard
# 10: Put display to sleep
# 11: Launchpad
# 12: Notification Center
# Top left screen corner → Put display to sleep (左上 → ディスプレイをスリープ)
defaults write wvous-tl-corner -int 10
defaults write wvous-tl-modifier -int 0
# Top right screen corner → Desktop (右上 → デスクトップを表示)
defaults write wvous-tr-corner -int 4
defaults write wvous-tr-modifier -int 0
# Bottom left screen corner → Mission Control (左下 → Mission Control)
defaults write wvous-bl-corner -int 2
defaults write wvous-bl-modifier -int 0
# Bottom right screen corner → Show application windows (右下 → アプリケーションウィンドウ)
defaults write wvous-br-corner -int 3
defaults write wvous-br-modifier -int 0


# Allow you to select and copy string in QuickLook (QuickLook で文字の選択、コピーを出来るようにする)
defaults write QLEnableTextSelection -bool true

私の環境(OS X 10.11 El Capitan クリーンインストール)だと、これが動かなくて困ってます。。。


# Automatically open a new Finder window when a volume is mounted
# マウントされたディスクがあったら、自動的に新しいウィンドウを開く
defaults write auto-open-ro-root -bool true
defaults write auto-open-rw-root -bool true
defaults write OpenWindowForNewRemovableDisk -bool true

# Set `${HOME}` as the default location for new Finder windows
# 新しいウィンドウでデフォルトでホームフォルダを開く
defaults write NewWindowTarget -string "PfDe"
defaults write NewWindowTargetPath -string "file://${HOME}/"

# Show Status bar in Finder (ステータスバーを表示)
defaults write ShowStatusBar -bool true

# Show Path bar in Finder (パスバーを表示)
defaults write ShowPathbar -bool true

# Show Tab bar in Finder (タブバーを表示)
defaults write ShowTabView -bool true

# Show the ~/Library directory (ライブラリディレクトリを表示、デフォルトは非表示)
chflags nohidden ~/Library

# Show the hidden files (不可視ファイルを表示)
defaults write AppleShowAllFiles YES


# Enable the `Develop` menu and the `Web Inspector` (開発メニューを表示)
defaults write -bool true
defaults write IncludeDevelopMenu -bool true
defaults write WebKitDeveloperExtrasEnabledPreferenceKey -bool true

# Enable `Debug` menu (メニュー → デバッグを表示)
defaults write IncludeInternalDebugMenu -bool true

# Show the full URL in the address bar (note: this will still hide the scheme)
# アドレスバーに完全なURLを表示
defaults write ShowFullURLInSmartSearchField -bool true

# Add a context menu item for showing the `Web Inspector` in web views
# コンテキストメニューにWebインスペクタを追加
defaults write NSGlobalDomain WebKitDeveloperExtras -bool true

# Show Safari's Status Bar (ステータスバーを表示)
defaults write ShowStatusBar -bool true

# Don't remember passwords (パスワードを自動入力・記録しない)
defaults write AutoFillPasswords -bool false で、カスタムテーマを作り、それを書き出して*.terminalファイル(ここでは、Solarized_Dark.terminal )を実行するシェルスクリプトと同じフォルダに入れておく。

# Use a custom theme (カスタムテーマを使う、そのテーマをデフォルトに設定する)
# Use a modified version of the Solarized Dark theme by default in
CURRENT_PROFILE="$(defaults read 'Default Window Settings')";
if [ "${CURRENT_PROFILE}" != "${TERM_PROFILE}" ]; then
    open "$TERM_PATH$TERM_PROFILE.terminal"
    defaults write "Default Window Settings" -string "$TERM_PROFILE"
    defaults write "Startup Window Settings" -string "$TERM_PROFILE"
defaults import "$HOME/Library/Preferences/"


# Load new settings before rebuilding the index (インデックスを再構築する前に新しい設定を読み込む)
killall mds > /dev/null 2>&1
# Make sure indexing is enabled for the main volume (メインディスクのインデックスを有効にする)
sudo mdutil -i on / > /dev/null
# Rebuild the index from scratch (インデックスを最初から再構築)
sudo mdutil -E / > /dev/null


# Enable `Tap to click` (タップでクリックを有効にする)
defaults write Clicking -bool true
defaults write NSGlobalDomain -int 1
defaults -currentHost write NSGlobalDomain -int 1

# Map bottom right Trackpad corner to right-click (右下をクリックで、副クリックに割り当てる)
defaults write TrackpadCornerSecondaryClick -int 2
defaults write TrackpadRightClick -bool true
defaults -currentHost write NSGlobalDomain -int 1
defaults -currentHost write NSGlobalDomain -bool true


# Avoid creating `.DS_Store` files on network volumes (ネットワークディスクで、`.DS_Store` ファイルを作らない)
defaults write DSDontWriteNetworkStores -bool true

# Hide the battery percentage from the menu bar (バッテリーのパーセントを非表示にする)
defaults write ShowPercent -string "NO"

# Date options: Show the day of the week: on (日付表示設定、曜日を表示)
defaults write 'DateFormat' -string 'EEE H:mm'

# Disable the "Are you sure you want to open this application?" dialog
# 未確認のアプリケーションを実行する際のダイアログを無効にする
defaults write LSQuarantine -bool false

# Automatically quit the printer app once the print jobs are completed
# 印刷が終了したら、自動的にプリンターアプリを終了する
defaults write "Quit When Finished" -bool true

# Save screenshots as PNGs (スクリーンショット保存形式をPNGにする)
defaults write type -string "png"

# Require password immediately after the computer went into
# sleep or screen saver mode (スリープまたはスクリーンセーバから復帰した際、パスワードをすぐに要求する)
defaults write askForPassword -int 1
defaults write askForPasswordDelay -int 0

# Expand save panel by default (保存パネルをデフォルトで開いた状態にする)
defaults write NSGlobalDomain NSNavPanelExpandedStateForSaveMode -bool true

# Expand print panel by default (印刷パネルをデフォルトで開いた状態にする)
defaults write NSGlobalDomain PMPrintingExpandedStateForPrint -bool true

# Hide the Time Machine and Volume icons from the menu bar (メニューバーのTime Machine と音量アイコンを非表示にする)
for domain in ~/Library/Preferences/ByHost/*; do
    sudo defaults write "${domain}" dontAutoLoad -array \
        "/System/Library/CoreServices/Menu Extras/" \
        "/System/Library/CoreServices/Menu Extras/"


以上が、個人的な設定ですが、mathiasbynens さんの、.osx が、割とまとまって色んな事設定してました。
さらに、それを解説している、勝手に独り読書会 - その01 - ばかもりだし も「その08」まであって、全部参考になります。