睡眠與電源
用 caffeinate 從終端機讓 Mac 保持喚醒
caffeinate 指令可以在工作執行期間防止 Mac 進入睡眠。它是 macOS 的一部分,不會更改任何設定。
症狀
- Mac 進入睡眠後,下載、建置或腳本就停止了。
- 遠端工作階段或 SSH 連線在一段時間沒有輸入後中斷。
- 你想讓 Mac 在某個工作期間保持喚醒,但不想更改睡眠設定。
可能原因
- 閒置睡眠。一段時間沒有鍵盤或滑鼠輸入後,macOS 會讓 Mac 進入睡眠。光是網路活動不一定能阻止這件事。
- 顯示器睡眠。顯示器會依自己的計時器關閉。在某些 Mac 上,系統接著也會進入睡眠。
- 螢幕蓋。闔上 Mac 筆電的螢幕會讓它進入睡眠,
caffeinate無法改變這一點。請參閱闔上螢幕時讓 Mac 筆電繼續運作。
如何檢查
打開終端機,查看目前有哪些處理程序在阻止睡眠。
pmset -g assertions輸出一份斷言列表,例如
PreventUserIdleSystemSleep,並列出持有每個斷言的處理程序。查看目前使用中的睡眠設定。
pmset -g
如何修正
若要在某個指令執行期間讓 Mac 保持喚醒,請在指令前面加上
caffeinate -i。指令結束時,斷言也會跟著結束。caffeinate -i make若要讓 Mac 保持喚醒一段固定時間,請用
-t指定秒數。這個範例是兩小時。caffeinate -i -t 7200若要讓 Mac 保持喚醒直到某個處理程序結束,請用
-w指定它的處理程序 ID。caffeinate -i -w 12345若也要讓顯示器保持開啟,請加上
-d。caffeinate -d -i若要停止不帶指令啟動的
caffeinate,請按 Control-C。若要在顯示器關閉時停止自動睡眠,請更改設定。在 Mac 筆電上,選擇「蘋果」選單 >「系統設定」>「電池」>「選項」,開啟「使用電源轉接器時,在顯示器關閉時防止自動進入睡眠」。
在 Mac 桌上型電腦上,選擇「蘋果」選單 >「系統設定」>「能源」,開啟「在顯示器關閉時防止自動進入睡眠」。
使用 Kilobat
Kilobat 可以讓 Mac 保持喚醒,直到下載變得安靜,再讓它進入睡眠。從選單列打開 Kilobat,按一下茶杯,然後選擇「直到下載完成」。
CLI 也能做到同樣的事。速度低於 16 KB/s 持續 3 分鐘後就會停止。
kilobat awake --until-quiet若要在某個指令執行期間讓 Mac 保持喚醒,並查看它傳輸的資料量,請使用
awake --。kilobat awake -- make release這些功能都是免費的。App、CLI 和 MCP 的步驟請參閱實用技巧。
常見問題
caffeinate 能讓 Mac 在闔上螢幕時保持喚醒嗎?
不能。caffeinate 只阻止閒置睡眠。闔上螢幕仍然會讓 Mac 筆電進入睡眠,除非 Mac 接上了外接顯示器、鍵盤和電源。請參閱闔上螢幕時讓 Mac 筆電繼續運作。
-s 選項有什麼作用?
-s 會阻止系統睡眠。man 頁面說明它只在 Mac 使用 AC 電源時有效。
caffeinate 會更改我的設定嗎?
不會。它建立的是電源斷言,caffeinate 結束時斷言也會跟著結束。
資料來源
- caffeinate(8),macOS 27.2 內建的 man 頁面
- pmset(1),macOS 27.2 內建的 man 頁面
- Apple 支援:設定 Mac 的睡眠與喚醒設定
資料來源檢查日期:2026年10月29日。man 頁面為 macOS 內建版本;在終端機中用 man <name> 開啟。