Macが勝手にスリープするのを防止!caffeinateコマンドの使い方を徹底解説!

※当ブログではアフィリエイト広告を利用しています

どうも、はむきち(@hamkitchi)です。

Macには省電力やスリープ機能がしっかり備わっていて、バッテリーの持ちがよくなるのは嬉しいポイントですよね。

しかし、長時間のダウンロードやコンパイル、またはプレゼン資料を表示し続けたい場合など、「ちょっとスリープしないでいてほしい」という場面も少なくありません。そんなときに便利なのが、Mac標準のコマンド「caffeinate」です。

caffeinate」という名前のとおり、「Macに眠気覚ましのカフェインを与える」イメージで、Macをスリープさせないようにできるのが特徴。ダウンロードや長時間の処理が途中で途切れるのを防ぎ、スムーズに作業を続けられます。

この記事では、caffeinateコマンドの基本的な使い方よく使うオプション、さらにスリープ防止を使う上での注意点をわかりやすく解説します。長時間の作業中に何度もログインし直すのが面倒だったり、突然のスリープでオンライン会議が中断されたりしてお困りの方は、ぜひ参考にしてみてください。

caffeinateとは?

caffeinateは、Mac が自動的にスリープモードにならないようにするコマンドです。

  • Mac を閉じていないのに勝手にスリープしてほしくないとき
  • 作業中に画面が暗くなるのを防ぎたいとき
  • ダウンロードや長時間の処理(プログラムのビルド、動画エンコードなど)を中断されずに進めたいとき

などに役立ちます。

caffeinate という名前は「カフェインを与える」というイメージが由来で、Mac を眠らせないように働きかけると考えるとわかりやすいでしょう。

基本的な使い方と仕組み

ターミナルで実行する

「caffeinate」はmacOS に標準で入っているので、追加でアプリを入れる必要はありません。

使い方としては、ターミナルを開いて以下を入力するだけです。

ターミナルで実行
caffeinate

これで、このコマンドを実行している間はMacがスリープしません
止めたいときは、ターミナルで Ctrl + C を押すか、ターミナルを閉じれば OK。

「仕組み」はざっくりこんな感じ

caffeinate は、Mac に「まだ使っているよ!」と教え続けるようなイメージです。通常、Mac は一定時間操作がないと「そろそろ休もうかな?」とスリープする設定になっています。しかし caffeinate を実行すると「今はまだ休まないで!」と主張し続けるため、スリープせずに起動状態を保てるというわけです。

主なオプション一覧と簡単な解説

オプション何を防ぐ?使いどころ
-d画面が暗くなる(ディスプレイ消灯)を防ぐプレゼン、デモ画面、動画視聴など、とにかく画面を消したくないとき
-iMacがアイドル状態でスリープするのを防ぐ長時間の処理や大容量のダウンロードを中断されたくない時
-mディスクのスリープを防ぐ外付けHDDへの書き込みや読み込みを長時間続けたい場合
-sMac全体がスリープするのを防ぐとにかくスリープして欲しくない時。ただし電源接続時のみ有効
-u画面が消えていたら点灯させるユーザーが操作している(アクティブ)とみなして画面を保つ
-t <秒数>指定した時間、スリープを防ぐ10分だけスリープをしないでほしいといった場合
-w <PID>指定したアプリ・プロセスが終了するまでスリープを防ぐダウンロードやバッチ処理が完了するまではスリープせず、処理が完了したら通常通りスリープさせたい場合

主なオプション一覧と簡単な解説

迷ったらこれ!

ターミナルで実行
caffeinate

冒頭でも示した通り、これだけ実行すればOKです。

ディスプレイはMacの省エネルギー設定に応じて消灯することがあるので、ディスプレイも消灯させたくない場合は次のオプションを指定して実行しましょう。

ディスプレイを消したくない(プレゼン・画面共有)

ターミナルで実行
caffeinate -d

ディスプレイも消したくない場合は、-dオプションを使いましょう。

10分だけ起きていてほしい

ターミナルで実行
caffeinate -t 600

秒で指定するため、10分だけスリープを防ぎたい場合は600を指定します。

ターミナルで実行
caffeinate -d -t 600

のように、他のオプションとの併用も可能です。

特定のプログラムが終わるまでスリープさせない(上級者向け)

ターミナルで実行
caffeinate -w 12345

すでに動いているプログラムのプロセスID(PID)が 12345 の場合、それが終わるまでスリープを防ぎます。「プロセスID」はアクティビティモニターの「PID」列やpsコマンドから確認できます。

バックグラウンドで動かしているダウンロードツールやバックアップツールに合わせて使うと便利です。

コマンドごと指定して実行(上級者向け)

ターミナルで実行
caffeinate -i make

実行したいコマンドの前にcaffeinate -iを入れて実行することで、そのコマンドが実行されている間はスリープしないように設定することができます。

処理が終わればcaffeinateコマンドも終了するため、スリープ防止の解除忘れがなく便利です。

注意点

バッテリー消費に注意!

スリープしないということは、その分バッテリー消費も増えることとなります。

長時間使う予定がある場合、電源につないでおくのがおすすめです。

caffeinateコマンドを実行しているのに画面が暗くなる場合

システム環境設定の「バッテリー」や「電源アダプタ」設定で「ディスプレイをオフにする時間」などが短くなっている場合は、-dオプションを使いましょう。

外部ディスプレイの場合は、モニター側の省エネ設定も影響することがあります。

終了し忘れに注意!

caffeinate をユーティリティ指定なしで実行すると、手動で止めるまでスリープしないこととなります。

バッテリー駆動の場合は特に、終わったらCtrl + Cやターミナル終了でオフにするクセをつけましょう。

まとめ

caffeinate は「Mac が勝手に眠らないようにする」ためのコマンドで、使い方はとてもシンプルです。

  • ターミナルで caffeinate を実行するとスリープ防止
  • オプションを加えると、ディスプレイだけ・アプリの実行中だけ・一定時間だけなど、状況に応じて柔軟にスリープを回避できる
  • バッテリー駆動時の消費と、解除のし忘れに注意!

とても便利なコマンドなので、長時間のダウンロードや処理、会議での画面共有など、Mac の「休んでほしくない」タイミングでぜひ活用してみてください!