Mac 常用使用与配置技巧

前言

换机或重装后,macOS 默认行为往往和日常习惯差一截:触控板要点太重、截图堆在桌面、聚焦结果太杂、Finder 搜到整台电脑。
Homebrew、Node、镜像等开发环境见 Mac常用环境配置,本文只收每天都会碰到的使用与系统开关。
下文以 Apple Silicon 上的 zsh 为例,Intel 机把 Homebrew 路径换成 /usr/local 即可。
部分 defaults 改完后要重启 Finder 或注销才完全生效。

系统设置

系统设置里优先改这几处,后面的命令只是加速同一件事。

触控板

打开 系统设置 → 触控板,打开轻点来点按,避免每次都要用力按下。
需要拖窗口时,打开 辅助功能 → 指针控制 → 触控板选项,打开三指拖移。
习惯 Windows 滚动方向的,可关掉触控板里的自然滚动。

键盘

开发时建议把 F1–F12 当标准功能键用:系统设置 → 键盘,打开将 F1、F2 等键用作标准功能键。
需要亮度、音量时按住 Fn 即可。
Caps Lock 可改成 Control:同一页进入修饰键,把 Caps Lock 映射为 Control。
按住字母弹出的长按字符菜单(accent menu)会干扰编辑器连按删除,可用下面命令改成按住即重复。

1
defaults write -g ApplePressAndHoldEnabled -bool false

改完后退出并重新打开目标 App 才会生效。
想加快重复速度时,可同时调这两项(数值越小越快,过小会难控)。

1
2
defaults write -g KeyRepeat -int 2
defaults write -g InitialKeyRepeat -int 15

Dock 与热角

系统设置 → 桌面与程序坞 里建议打开自动显示和隐藏程序坞,并关掉在程序坞中显示建议和最近使用的 App。
同一页可把最小化改成缩放到应用程序图标,减少 Dock 被窗口挤满。
桌面与程序坞 最下方的触发角可把某个屏幕角设为调度中心或锁屏,鼠标甩过去即可。

窗口切换记住两组键:Command + Tab 切 App,同一 App 的多个窗口用 Command 加反引号键(Tab 上方那颗)。
分屏用窗口左上角的绿色按钮按住,再选左右半屏。

聚焦搜索:结果类别

Command + 空格 打开聚焦。
默认会把 App、文稿、邮件、网页建议一起搜,结果又杂又慢。
系统版本不同,侧边栏可能叫 聚焦 或 Siri 与聚焦,下面以较新的 聚焦 为准。

先收结果类别,只保留真正会从聚焦里打开的项。

  1. 打开 系统设置,点边栏里的 聚焦。
  2. 在 来自 App 的结果、来自系统的结果、剪贴板搜索 里,打开要用的类别,关掉用不到的。
  3. 不需要把查询发给 Apple 时,取消 帮助 Apple 改进搜索。

开发机上常见做法是关掉邮件、信息、网页建议一类,留下 App、文件夹、系统设置。
类别只影响展示,磁盘仍会被索引。

聚焦搜索:排除索引与重建

真正改聚焦搜哪里的,是同一页底部的 搜索隐私,不是上面的结果类别。
加进列表的文件夹或磁盘不会被索引, Command + 空格 也搜不到里面的文件。
Finder 窗口内的搜索同样走这套索引,排除后在对应目录里搜会变慢或搜不全。

  1. 打开 系统设置,点边栏里的 聚焦。
  2. 滚到页面底部,点 搜索隐私。
  3. 点 + 选文件夹或磁盘,或直接把目录拖进列表。
  4. 要恢复索引时,选中该项再点 -。

开发机上常见排除对象是虚拟机镜像、Docker 数据、大型素材库,以及只当仓库用的外置盘。
不要把整块内置磁盘加进排除列表,否则部分 App 更新通知会收不到。
时间机器备份盘即使排除,系统仍会索引备份本身——Time Machine 依赖 Spotlight 索引,这是备份机制需要的;搜的时候不会把备份里的普通文件当结果(行为随系统版本略有差异)。

外置盘整卷都不想参与聚焦时,可用 mdutil 关掉该卷的索引,效果和搜索隐私类似,但针对整块卷。
先看本机卷是否在索引(输出 Indexing enabled 表示正在索引),再按卷路径关闭。

1
2
mdutil -s /
sudo mdutil -i off /Volumes/磁盘名

结果明显过时或刚改完排除列表时,可重建本机索引,完成后会重新扫描,期间风扇可能转一会儿。
普通重建用 -E,擦掉索引后立刻重建,一条命令即可:

1
sudo mdutil -E /System/Volumes/Data

-X 才是拆掉索引目录,只在索引损坏、-E 重建也失败时用。
先关掉索引,再删掉索引目录,最后按需重新打开;索引一直开着时,系统会马上再写回去。

1
2
3
sudo mdutil -i off /
sudo mdutil -i off /System/Volumes/Data
sudo mdutil -X /System/Volumes/Data

确认目录没了或变得很小后,若还要用聚焦,再打开:

1
sudo mdutil -i on /System/Volumes/Data

Finder

Finder 默认信息偏少,把路径栏、扩展名打开后,定位文件会轻松很多。

显示信息

在任意 Finder 窗口用菜单 显示 打开路径栏和状态栏,或用命令一次写上。
改完后重启 Finder 使界面立刻刷新。

1
2
3
4
defaults write com.apple.finder ShowPathbar -bool true
defaults write com.apple.finder ShowStatusBar -bool true
defaults write NSGlobalDomain AppleShowAllExtensions -bool true
killall Finder

需要临时看隐藏文件时,在 Finder 里按 Command + Shift + .。
用户目录下的 Library 默认隐藏,长期要进可用:

1
chflags nohidden ~/Library

搜索与排序

聚焦管全局检索,文件夹内部查找用 Finder 窗口右上角的搜索框,并应默认限制在当前文件夹,避免一次扫整盘。
把 Finder 搜索范围改成当前文件夹:

1
defaults write com.apple.finder FXDefaultSearchScope -string "SCcf"

列表视图里希望文件夹始终排在文件前面:

1
2
defaults write com.apple.finder _FXSortFoldersFirst -bool true
killall Finder

常用操作

复制当前文件夹的 POSIX 路径用 Option + Command + C。
地址栏跳转用 Command + Shift + G,可直接贴 /opt/homebrew 这类路径。
预览文件按空格即可,再按空格关闭,不必每个都打开。
从 Finder 把文件拖到终端,会插入带转义的完整路径。

截图与录屏

Command + Shift + 3 全屏,Command + Shift + 4 框选,Command + Shift + 5 打开工具条(可选窗口、录屏、改保存位置)。
框选后再按空格,会变成捕捉指定窗口。
需要放进剪贴板而不是文件时,在上述组合里再加 Control。

桌面容易被截图占满,建议先建目录再改保存位置。

1
2
3
mkdir -p ~/Pictures/Screenshots
defaults write com.apple.screencapture location ~/Pictures/Screenshots
killall SystemUIServer

窗口截图默认带阴影,不需要时可关掉。

1
2
defaults write com.apple.screencapture disable-shadow -bool true
killall SystemUIServer

终端

终端里用 open 和系统剪贴板对接,比在 Finder 和编辑器之间来回点更省事。

打开与剪贴板

在当前目录打开 Finder、用默认 App 打开文件、或指定 App 打开,都可以用 open。

1
2
3
open .
open README.md
open -a Safari https://example.com

把命令输出或文件内容送进剪贴板,再用 Command + V 贴到任意 App。

1
2
3
pwd | pbcopy
cat ~/.ssh/id_ed25519.pub | pbcopy
pbpaste

密钥文件名按实际来,RSA 对应 id_rsa.pub。

临时不让机器睡觉(演示或跑长任务)用 caffeinate,Control + C 结束。

1
caffeinate -d

zsh 配置

Apple Silicon 上 Homebrew 在 /opt/homebrew,新开终端前要先注入 PATH。
把下面片段放到 ~/.zshrc 靠近文件开头的位置。

1
eval "$(/opt/homebrew/bin/brew shellenv)"

常用别名也可写在同一文件,改完执行 source ~/.zshrc。

1
2
3
alias ll="ls -lah"
alias ..="cd .."
alias gs="git status"

还没装过命令行工具时,先装 Xcode Command Line Tools,否则 git、clang 都不可用。

1
xcode-select --install

defaults 开关

defaults 改的是 App 的 plist,写错 key 通常只是没效果,不会把系统写坏。
改 Finder 相关项后记得 killall Finder。

外置盘和网盘上的 .DS_Store 容易污染共享目录,可禁止写入。

1
2
defaults write com.apple.desktopservices DSDontWriteNetworkStores -bool true
defaults write com.apple.desktopservices DSDontWriteUSBStores -bool true

保存面板默认收缩成很短一截,展开后才能直接选路径。

1
2
defaults write NSGlobalDomain NSNavPanelExpandedStateForSaveMode -bool true
defaults write NSGlobalDomain NSNavPanelExpandedStateForSaveMode2 -bool true

查看某个 key 当前值、或恢复默认,用 read 和 delete。

1
2
3
defaults read com.apple.finder ShowPathbar
defaults delete com.apple.screencapture location
killall SystemUIServer

安全与权限

从网上下载的 App 第一次打开可能被拦截:在 系统设置 → 隐私与安全性 里点仍要打开。
开发调试、输入法、截图工具常要在辅助功能、屏幕录制、完全磁盘访问权限里勾选,改完建议把目标 App 退出再开。
终端里执行 sudo 前先确认命令来源,系统密码输入时不会回显字符。

启动时自动打开的 App 在 系统设置 → 通用 → 登录项与扩展 管理,装过的启动器、更新器优先从这里清掉。
查看本机大致型号与系统版本,可在终端执行:

1
2
sw_vers
uname -m

arm64 表示 Apple Silicon,x86_64 表示 Intel。
按架构选 Homebrew 路径和部分 CLI 安装包,能少踩一半坑。