// mac terminal

终端急救手册

面向非技术用户的 Mac 终端命令速查。点击卡片复制命令,打开终端粘贴执行即可。

🧊
程序卡死 / 强制关闭
强制关闭某个应用
点击复制
应用完全没反应、转圈圈转不停时用。把「应用名称」换成实际名字,比如 Safari、WeChat、Finder。
killall 应用名称
查找某个应用的进程编号
点击复制
killall 没反应时用,先查出进程编号(PID),结果第二列的数字就是。
ps aux | grep 应用名称
用进程编号强制终止
点击复制
把上面查到的 PID 数字填进来,这是最强力的关闭方式,几乎没有应用能扛住。
kill -9 进程编号
📶
蓝牙 / 外设连不上
重启蓝牙服务
点击复制
蓝牙耳机、鼠标、键盘连不上,或者连上没声音时用。执行后蓝牙会自动重启,稍等几秒再重新配对。需要输入密码。
sudo pkill bluetoothd
清除蓝牙配对记录
点击复制
蓝牙设备怎么都连不上、反复断连时用。执行后重启 Mac,所有蓝牙设备需要重新配对。
rm -rf ~/Library/Preferences/com.apple.Bluetooth.plist
查看 USB 设备是否被识别
点击复制
插了 USB 设备但没反应时用,列出所有已识别的 USB 设备,看看你的设备在不在里面。
system_profiler SPUSBDataType
🔍
查找大文件 / 清理空间
找出超过 500MB 的大文件
点击复制
扫描整个用户目录,列出所有超过 500MB 的文件。把 500M 改成 1G 可以只找 1GB 以上的。需要等一会儿。
find ~ -size +500M -type f 2>/dev/null
列出主文件夹里最占空间的 20 项
点击复制
按大小排列主文件夹里的内容,快速定位哪个文件夹最占地方。
du -sh ~/* | sort -rh | head -20
删除所有 .DS_Store 隐藏文件
点击复制
.DS_Store 是 Mac 自动生成的隐藏文件,单个很小但数量庞大。传文件给别人前清一次比较整洁。
find ~ -name '.DS_Store' -delete 2>/dev/null
清理 Homebrew 旧版本缓存
点击复制
如果你装过 Homebrew,旧版本文件会默默占用大量空间。这条命令统一清理掉。没装 Homebrew 的话会提示未安装。
brew cleanup 2>/dev/null || echo "Homebrew 未安装"
🔒
应用安装不了 / 打不开

⚠️ 以下命令会绕过 macOS 安全限制,仅对你信任来源的应用使用。从不明渠道下载的软件请勿轻易操作。

解除「已损坏,无法打开」
点击复制
提示「应用已损坏」或「无法验证开发者身份」时用。把「应用名称」替换成实际名字,执行后重新双击打开即可。
xattr -cr /Applications/应用名称.app
允许安装任意来源的应用
点击复制
执行后在「系统设置 → 隐私与安全性」里会出现「任何来源」选项。需要输入密码。装完应用后建议马上用下面那条命令恢复默认。
sudo spctl --master-disable
恢复默认安全设置
点击复制
装完应用后执行这条,把安全策略恢复回来。平时保持开启更安全。
sudo spctl --master-enable
用终端强制打开应用
点击复制
双击打不开时可以试试用终端启动,有时能绕过拦截弹窗。把「应用名称」换成实际名字。
open /Applications/应用名称.app
🗑
文件 / 应用删不掉
强制退出某个应用进程
点击复制
拖进废纸篓提示「正在使用中」时用。把「应用名称」换成实际名字,比如 Raycast、Finder。
pkill -x 应用名称
强制删除应用(需要密码)
点击复制
pkill 之后还删不掉时用。执行后会提示输入 Mac 登录密码。
sudo rm -rf /Applications/应用名称.app
强制删除某个文件
点击复制
普通文件删不掉时用。把路径换成实际文件位置,~/Downloads 是下载文件夹。
sudo rm -rf ~/Downloads/文件名
💾
磁盘 / 空间不够
查看磁盘剩余空间
点击复制
看看哪个分区快满了。Size 是总容量,Avail 是剩余空间。
df -h
查看下载文件夹各文件大小
点击复制
快速找出占空间最大的文件。可以把 Downloads 换成其他文件夹路径。
du -sh ~/Downloads/*
清空系统缓存
点击复制
可以释放几百 MB 到几 GB,安全,清完缓存会自动重建。
rm -rf ~/Library/Caches/*
📡
网络 / 连接有问题
测试网络是否通畅
点击复制
发 4 个数据包,测试网络延迟和丢包率。有 time= 数值说明网络通。
ping -c 4 baidu.com
刷新 DNS 缓存
点击复制
网页打不开但网络正常时试试,相当于给 Mac 做一次 DNS 记忆清除。
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
⚡
系统 / 运行变慢
查看哪个程序最占 CPU
点击复制
按 CPU 使用率排列进程,风扇狂转时很好用。按 q 退出。
top -o cpu
释放内存缓存
点击复制
内存占用很高但不想重启时用。需要输入 Mac 登录密码。
sudo purge
重启菜单栏
点击复制
菜单栏图标不显示、状态栏卡住时用。界面会闪一下然后自动恢复正常。
killall -KILL SystemUIServer
☁️
iCloud 文件迁移到本地

⚠️ 以下命令用于把 iCloud 云端文件夹完整迁移到本地。操作前请确认网络正常、磁盘空间足够。迁移完成并确认无误后再删除 iCloud 原文件。

查看 iCloud 里有哪些 Obsidian 仓库
点击复制
列出 iCloud 上所有 Obsidian 仓库名称,确认要迁移的文件夹名字拼写正确。
ls ~/Library/Mobile\ Documents/iCloud\~md\~obsidian/Documents/
强制下载 iCloud 文件到本地
点击复制
把「仓库名」换成实际名字。执行后没有输出是正常的,去 Finder 里确认文件的 ☁️ 图标消失再继续。如果部分文件没有消失,在 Finder 里手动右键单个文件选「下载」。
brctl download ~/Library/Mobile\ Documents/iCloud\~md\~obsidian/Documents/仓库名
新建本地存放目录
点击复制
在用户根目录下创建 LocalVaults 文件夹作为本地仓库存放位置,完全脱离 iCloud 管理。只需执行一次。
mkdir ~/LocalVaults
用 rsync 复制仓库到本地
点击复制
把两处「仓库名」换成实际名字。比 mv 更稳定,会逐文件复制并显示进度。如果中途卡住超过 10 分钟,按 Ctrl+C 停止,去 Finder 手动下载卡住的文件后再重跑一次。
rsync -av ~/Library/Mobile\ Documents/iCloud\~md\~obsidian/Documents/仓库名*/ ~/LocalVaults/仓库名/
续传:跳过已复制的文件继续
点击复制
rsync 中断后用这条重跑,加了 --ignore-existing 会跳过已传完的文件,只补传缺失部分,速度快很多。
rsync -av --ignore-existing ~/Library/Mobile\ Documents/iCloud\~md\~obsidian/Documents/仓库名*/ ~/LocalVaults/仓库名/
确认迁移完成后删除 iCloud 原文件
点击复制
⚠️ 先在 Obsidian 里打开本地新仓库确认一切正常,再执行这条删除命令。把「仓库名」换成实际名字。
rm -rf ~/Library/Mobile\ Documents/iCloud\~md\~obsidian/Documents/仓库名*

怎么用:用 Spotlight(⌘ + 空格)搜索「Terminal」打开终端,点击上方卡片复制命令,粘贴进终端按回车执行。

带 sudo 的命令需要输入 Mac 登录密码,输入时屏幕不显示字符,这是正常的,输完直接回车即可。