ブログに戻る
Guide

Macのcaffeinateコマンド:ターミナルでスリープを止める方法

caffeinateはMacをスリープさせないmacOS標準のコマンドです。-dで画面、-iでスリープを止め、-tで時間を指定し、Ctrl+Cで終了。オプションと実行例、caffeinateではSlackのアクティブが保てない理由。

Slack Green Team
September 27, 2026
November 3, 2026
6 分で読める
Share:
mac
ターミナル
リモートワーク

無料ツール、このタブでそのまま使えます

caffeinateコマンドを作って確かめる

何をどれだけ起こしておくかを選ぶか、使っているコマンドを貼り付けて、実際に何を保つかを確かめましょう。結果をコピーしてターミナルに貼り付けます。

$
Check a line people use:
What this line holds, second by second
-i Mac awake2 h-d Screen on2 h0 s5 s10 s2 hClosing this Terminal window ends every bar.
  • It runs in this Terminal window: Ctrl+C stops it, and so does closing the window.

Keep awake

How long

hmin= -t 7200. caffeinate counts in seconds.

When you close Terminal

Check that it runs

pmset -g assertions | grep -A1 caffeinate

# one caffeinate line per assertion, with its Details:
PreventUserIdleSystemSleep   caffeinate asserting for 7200 secs
PreventUserIdleDisplaySleep  caffeinate asserting for 7200 secs

Stop it

# Ctrl+C in its Terminal window, or from another one:
pkill -f "^caffeinate -di"

Keep it as a word you type

NameThen open a new Terminal window and type awake.
echo "alias awake='caffeinate -di -t 7200'" >> ~/.zshrc

caffeinate keeps the Mac awake, not Slack active. In our test Slack still went away 10 minutes after the last keyboard or mouse input with the screen on: does Caffeine keep Slack active.

ツールのページを開く

caffeinate コマンドを使うと、ターミナルからMacをスリープさせずにおけます。画面をつけたままにするなら caffeinate -d、システムのスリープだけ止めるなら何も付けずに caffeinate を実行し、止めるときは Ctrl+C を押します。caffeinateは入力を作らないので、Slackの緑の点は保てません。Slack Greenなら、Macがスリープ中でもふたを閉じていても、サーバーからSlackの点を緑に保てます(7日間無料、カード登録不要)。

1時間で止めたいなら -t 3600 を付けます。caffeinate -i ./backup.sh のように後ろにコマンドを書けば、そのコマンドが動いているあいだだけスリープを止めます。macOSに最初から入っていて、管理者のパスワードもインストールもいりません。

Slackのアクティブ表示は保てません。Slackのデスクトップアプリは、Macが起きていてもいなくても、Macでの最後のキーボードまたはマウス入力から10分で離席中にします(Slackデスクトップ版4.52.178のコードで2026年10月7日に確認)。caffeinateが防げるのは、Macがスリープしたときにすぐ離席中になることだけです。

このページのコマンドはすべて、2026年9月30日にmacOS 26.5.2のMacBook(Appleシリコン)で実行し、pmset -g assertions で1つずつ確認しました。結果は下に載せています。

caffeinateのオプション

意味は man caffeinate によるものです。右の列は、私たちのMacで各オプションが作ったアサーション(スリープを止める要求)で、pmset -g assertions に出た名前です。

オプションすること確認できたアサーション
-d画面のスリープを防ぐPreventUserIdleDisplaySleep
-iシステムのアイドルスリープを防ぐPreventUserIdleSystemSleep
なし-i と同じPreventUserIdleSystemSleep
-mディスクのアイドルスリープを防ぐPreventDiskIdle
-sシステムのスリープを防ぐ。電源接続時のみPreventSystemSleep
-uユーザーが操作中だと宣言し、画面をつける。-t がなければ5秒だけUserIsActive
-t 秒数その秒数がたつとアサーションを外す「caffeinate asserting for 20 secs」
-w PIDそのIDのプロセスが終わるまで続ける「asserting on behalf of Process ID 97977」
コマンドそのコマンドが動いているあいだ続ける追加のものはなし

私たちのMacでpmsetに出た内容

caffeinate -dims -t 20 を動かして1秒後の出力です。

$ caffeinate -dims -t 20 &
$ pmset -g assertions | grep caffeinate
   pid 97573(caffeinate): [0x0001aacb000197db] 00:00:01 PreventUserIdleSystemSleep named: "caffeinate command-line tool"
	Details: caffeinate asserting for 20 secs
   pid 97573(caffeinate): [0x0001aacb000597dc] 00:00:01 PreventUserIdleDisplaySleep named: "caffeinate command-line tool"
	Details: caffeinate asserting for 20 secs
   pid 97573(caffeinate): [0x0001aacb000797dd] 00:00:01 PreventSystemSleep named: "caffeinate command-line tool"
	Details: caffeinate asserting for 20 secs
   pid 97573(caffeinate): [0x0001aacb000f97de] 00:00:01 PreventDiskIdle named: "caffeinate command-line tool"
	Details: caffeinate asserting for 20 secs

時間を指定した実行は自分で終わりました。caffeinate -t 2 は2.10秒で、caffeinate -i sleep 3 は包んだコマンドと同じ3.01秒で戻りました。-w では、見張っていたプロセスが終わるとすぐにcaffeinateも終了しました。caffeinate -u -t 3 が終わったあと、pmset -g assertions | grep -c caffeinate は0を出力したので、何も残りません。どれもパスワードは聞かれず、ふつうのユーザーのまま動きました。

caffeinateでMacは起きたままになりますが、Slackは最後のキーボードまたはマウス入力から10分で離席中になります。サーバー側で動くツールなら、入力なしでSlackの点を緑に保てます。ノートPCがスリープ中でも、ふたを閉じていても同じです。

caffeinate -i と -d の違い

  • • caffeinate -i はコンピューターを動かし続けますが、画面は消えることがあります。ダウンロード、バックアップ、ビルドに向いています。
  • • caffeinate -d は画面をつけたままにします。画面を見せておきたいときや、スクリーンセーバーとそのあとのロックを止めたいときに使います。
  • • caffeinate -di は両方です。オプションは組み合わせられるので、caffeinate -dims なら4つ同時に指定できます。
  • コマンドを動かすのでなく設定でずっと変えたいなら、Macのスクリーンセーバーをオフにする方法をご覧ください。

    caffeinateの使用例

    # Ctrl+Cを押すまで画面をつけたままにする
    caffeinate -d
    
    # 2時間スリープさせず、そのあと止める
    caffeinate -di -t 7200
    
    # コマンドが動いているあいだだけスリープさせない
    caffeinate -i rsync -a ~/Projects /Volumes/Backup/
    
    # ほかのアプリが終了するまでスリープさせない(PIDはpgrepで調べる)
    caffeinate -i -w "$(pgrep -x Transmission)"
    
    # バックグラウンドで動かし、同じターミナルを使い続ける
    caffeinate -d &

    動いているかは、上の出力のように pmset -g assertions | grep caffeinate で確かめます。grep を付けなければ、Macを起こしたままにしているほかのものも一覧に出ます。私たちのMacでは、Amphetamineアプリと、あるElectronアプリが出ていました。詳しくはMacがスリープしない理由にあります。

    caffeinateの止め方

  • • ターミナルのウィンドウで動いているなら、Ctrl+C を押します。
  • • バックグラウンドで始めたなら、pgrep -l caffeinate でプロセスIDを調べて、そのIDを kill します。killall caffeinate でも止まりますが、スクリプトやほかのアプリが始めたものも含めて、すべてのcaffeinateが止まります。
  • • -t を使ったなら、時間がくれば自分で止まります。

caffeinateとMacBookのふた

caffeinateを動かしていても、ふたを閉じるとMacBookはスリープします。例外は、電源につないで外部ディスプレイ、キーボード、マウスをつないでいる場合です。caffeinateは開いているMacを起こしておくもので、クラムシェルモードの代わりにはなりません。ディスプレイをつながずに閉じたMacを起こしておくには、管理者用のコマンドpmset disablesleepを使います。0に戻すまで効き続けます。MacとWindowsでふたを閉じたまま使う方法はふたを閉じてもノートパソコンをスリープさせない方法にあります。

caffeinateでSlackはアクティブのまま?

なりません。同じことをCaffeineアプリで試したところ、Slackは10分目まで緑で、画面がついたまま離席中になりました。テストの全体はCaffeineでSlackはアクティブのままかにあります。

caffeinateがなくすのは、Macのスリープやロックという1つのきっかけだけで、これはすぐに離席中になる原因です。Slackの操作なしのタイマーはMacのアイドル時間を読みますが、caffeinateは入力を作りません。caffeinate -u は数秒だけ画面をつけますが、アイドル時間のカウンターはリセットしません。MacでのルールはMacでSlackをアクティブに保つに、すべての方法の比較はSlackをアクティブに保つ方法にあります。

コマンドを打つよりメニューバーのアイコンをクリックしたいなら、Amphetamine、KeepingYouAwake、Caffeine、Lungo、KeepAwakeをMacをスリープさせないアプリの比較で比べています。

会社のMacでのcaffeinate

caffeinateは最初から入っていて管理者権限もいらないので、管理されたMacでもたいてい動きます。会社がMDMで強制している画面ロックは、それでもかかります。ロックをずっと止めるロック画面の設定はMacの画面をロックさせない方法に、WindowsとLinuxで同じことをする方法は管理者権限なしで会社のパソコンをスリープさせない方法にあります。

よくある質問

caffeinateにsudoは必要ですか?

いりません。自分のユーザーのまま動きます。このページのコマンドは、どれもパスワードなしで動きました。

ターミナルを閉じてもcaffeinateは続きますか?

ターミナルのウィンドウを閉じると、中で動いているものにハングアップ信号が送られます。テストでは、ふつうの caffeinate はその信号ですぐ止まり、nohup caffeinate -t 60 & で始めたものは動き続けました。ウィンドウを閉じたいなら nohup を使います。

関連記事

Guide

Ubuntuの画面ロックを止める方法(GNOME、KDE、Mint)

Ubuntuの画面ロックを止めるには、設定、プライバシーとセキュリティ、画面ロックで自動画面ロックをオフにし、画面を暗くするまでの時間を「しない」にします。同じことをするgsettingsのコマンド、サスペンドも止める方法、1つの作業のあいだだけロックを止める方法、KDE PlasmaとLinux Mintでの手順をまとめました。

Slack Green Team
Guide

Mac用Caffeineアプリ:ダウンロード、設定、代わりのアプリ

Caffeineは、Macを起こしておく無料でオープンソースのメニューバーアプリです。コーヒーカップをクリックすると、Macはスリープせず、画面も暗くならず、スクリーンセーバーも始まりません。本物の入手先、macOSに合うバージョン、すべての設定、動いているかの確かめ方、代わりのアプリをまとめました。

Slack Green Team
Guide

Macの画面がロックされないようにする方法(ITのルールを破らずに)

Macのロックを止めるには、システム設定のロック画面で、ディスプレイをオフにする時間をしないか長めにし、パスワードを要求するまでの時間を延ばします。またはcaffeinate -dを実行します。管理されたMacでできることと、それでもSlackが離席中になる理由もまとめました。

Slack Green Team