メインコンテンツへ移動 / Skip to main content

Macを眠らせず、終わったらしゃべらせる──標準搭載なのに知られていない caffeinate と say【2026年版】

Macに標準搭載されているcaffeinateコマンドとsayコマンドの活用法を最新のオプション一覧つきで解説。スリープ防止から音声読み上げ、自動化スクリプトへの組み込みまで、隠れた名コマンドをまとめました。

Macのターミナルがcaffeinateで眠らずに動き続け、吹き出しでsayコマンドの読み上げを表す編集イラスト
テクノロジー
公開日: 2025年9月29日
更新日: 2026年8月4日
読了時間: 5
著者: ぽちょ研究所
読了時間: 5

はじめに

みなさん、こんにちは。今日はMacをもっと便利に、ちょっと面白く使いこなすための「隠れた名コマンド」を2つ紹介します。1つ目は caffeinate、2つ目は say です。

どちらも追加インストール不要で、macOS Tahoe(26)を含む現行のmacOSに標準で入っているターミナルコマンドです。GUIの「Caffeine」的なユーティリティアプリを別途入れなくても、この2つを覚えておくだけで日常のちょっとした不便がかなり解消されます。

1. caffeinateコマンド — Macを「眠らせない」魔法

1-1. 目的と機能

Macは一定時間操作をしないと自動的にスリープ(省電力モード)に入ります。バッテリーや環境にはやさしい仕組みですが、

  • 長時間のダウンロードやビルド
  • サーバーやバッチスクリプトの実行
  • プレゼンや会議中の資料表示
  • 外部ディスプレイでの動画・サイネージ表示

といった「勝手にスリープすると困る」場面では邪魔になります。そこで役立つのが caffeinate コマンドです[1]。「カフェインを飲んで眠気を防ぐ」という名前の通り、指定した条件が満たされている間だけMacを起こし続けます。

1-2. 基本の使い方

ターミナルで次のように入力するだけです。

bash
caffeinate

これで、ターミナルを閉じるか Ctrl + C で止めるまで、Macはスリープしなくなります。 引数なしの caffeinate は、既定でシステムのアイドルスリープを防ぐ -i 相当の挙動になります。

1-3. オプションを使いこなす

caffeinate にはいくつかのフラグがあり、組み合わせることで「何を」「どれくらい」眠らせないかを細かく制御できます。

オプション効果
-dディスプレイのスリープを防止する
-iシステムのアイドルスリープを防止する(既定の挙動)
-mディスクのアイドルスリープを防止する
-sシステムスリープを防止する(AC電源接続時のみ有効)
-uユーザーが操作中であると宣言し、ディスプレイをオンにする
-t <秒>指定した秒数だけアサーションを維持する
-w <PID>指定したプロセスIDが終了するまで待つ

よく使う組み合わせ例です。

  • 30分だけスリープを防ぎたい
bash
  caffeinate -u -t 1800

-t は秒数指定(1800秒=30分)です。

  • 特定のコマンドの実行中だけスリープさせない
bash
  caffeinate -s curl -O https://example.com/bigfile.zip

curl が終了すれば、自動的にスリープ許可状態に戻ります。プロセスを渡す形なので、長時間のビルドコマンドやrsync転送にもそのまま応用できます。

  • すでに動いている別プロセスの終了を待つ
bash
  caffeinate -w 1234

PID 1234 のプロセスが終わるまでスリープを防ぎます。バックグラウンドで走らせた重い処理と組み合わせる際に便利です。

caffeinateコマンドの主要オプション(-d -i -m -s -u -t -w)を整理したチートシート図

図1:caffeinateの主要フラグ早見表。ディスプレイ・システム・ディスクのどの層を眠らせないかで使い分ける。

1-4. どんな局面で使うと良いか

  • 大容量のダウンロードやバックアップを夜間に走らせたいとき
  • Zoom・Google Meet・Teamsの会議で画面を表示し続けたいとき
  • 外部ディスプレイでスライドや動画を流しっぱなしにしたいとき
  • CIビルドやnpm/yarnの長時間タスクを手元のMacで実行するとき

「うっかりMacが寝てしまった!」を防ぐ、小さいけれど強力な味方です。

2. sayコマンド — Macにしゃべらせてみよう

2-1. 目的と機能

次に紹介するのは say コマンドです[2]。名前の通り「Macにしゃべらせる」ことができます。もともとは視覚に障がいのある方向けのアクセシビリティ機能の一部ですが、学習や通知の演出にも使える面白いツールです。

2-2. 基本の使い方

ターミナルで次を入力してみてください。

bash
say "Hello, World!"

Macが「ハロー、ワールド」と声を出してくれます。日本語もそのまま扱えます。

bash
say "おはようございます。今日も元気にいきましょう。"

2-3. 声を変える・ファイルに保存する

声の種類は「システム設定 → アクセシビリティ → 読み上げコンテンツ」から追加できます。インストール済みの声は say -v ? で一覧表示できます。

bash
say -v Kyoko "おはよう"
say -v Samantha "Good morning"
say -v "?"

話す速さを変えたいときは -r(words per minute)を使います。

bash
say -r 220 "少し早口で読み上げます"

音声をファイルに書き出すこともできます。ここで一つ訂正しておきたい点があります。say -o が直接書き出せるのは AIFF・CAF・m4af・WAVE で、MP3への直接出力には対応していません。MP3が欲しい場合は、いったんこれらの形式で書き出してから afconvertffmpeg で変換します。

bash
# AIFF(既定)で書き出し
say "これはテスト音声です" -o test.aiff

# 形式を明示して書き出し(m4af / caff / WAVE なども指定可)
say "これはテスト音声です" -o test.m4a --file-format=m4af

# 書き出せる形式の一覧を確認
say -o /dev/null --file-format="?" "list"
sayコマンドで日本語と英語の音声を切り替え、ファイルへ書き出す様子を表した編集イラスト

図2:sayは日英どちらの読み上げにも対応する。出力ファイル形式はAIFF/CAF/m4af/WAVEで、MP3化には別途変換が必要。

2-4. どんな局面で使うと良いか

  • 語学学習(英語の発音をMacに読ませて耳で覚える)
  • プレゼンでのナレーション代わりの効果音的な演出
  • 長時間タスクの完了を「声」で知らせる通知代わり
  • スクリーンリーダーが使えない環境での簡易読み上げ確認

自動処理の最後に say "バックアップが完了しました" を仕込めば、作業終了を声で教えてくれるユニークな通知になります。

3. 応用編:caffeinate × say を組み合わせる

3-1. 長時間処理の完了通知

両方を組み合わせると、「スリープを防ぎながら、終わったら声で教えてくれる」自動化が簡単に作れます。

bash
caffeinate -s ./long_process.sh && say "処理が終わりました"
  • caffeinate -s でスリープ防止
  • 処理が終わったら say で声で通知

という「仕事の相棒」的な使い方ができます。

3-2. シェルスクリプトへの組み込み例

ビルドやテストのラッパースクリプトに仕込んでおくと、画面から離れていても完了に気付けます。

bash
#!/bin/bash
set -e
caffeinate -dims &
CAFFEINATE_PID=$!

npm run build
npm test

kill "$CAFFEINATE_PID" 2>/dev/null
say "ビルドとテストが完了しました"

caffeinate -dims はディスプレイ・システム・ディスクのアイドルスリープをまとめて防ぐ書き方で、フラグを連結して指定できます。バックグラウンドで起動して、処理が終わったら kill で止める構成です。

caffeinateでスリープを防ぎながらビルドを実行し、完了時にsayで通知する自動化フローの図

図3:caffeinateでスリープを止め、処理完了後にsayで声の通知を出す、という組み合わせが「仕事の相棒」になる。

4. 覚えておくと差がつく追加の小技

caffeinateとsay以外にも、標準搭載なのに意外と知られていないターミナルコマンドがあります。あわせて覚えておくと便利です。

  • pbcopy / pbpaste:クリップボードとの間で標準入出力をやり取りできます。cat file.txt | pbcopy でファイル内容をそのままコピー可能。
  • open -a "アプリ名":ターミナルから任意のアプリやファイル、URLを開けます。open . でカレントディレクトリをFinderで開くのも定番です。
  • screencapture -T 5 shot.png:5秒後にスクリーンショットを撮影します。-i を付けると範囲選択、-c でクリップボードに直接コピーできます。
  • shortcuts run "ショートカット名":ショートカットズ(旧オートメーター系)に登録したワークフローをターミナルからワンライナーで実行できます。

ミニまとめcaffeinate say pbcopy/pbpaste open screencapture shortcuts run の6つを覚えておくと、GUI操作を挟まずに済む場面がぐっと増えます。

まとめ

今日はMacに標準で入っているけれど、意外と知られていない便利なコマンドを紹介しました。

  1. caffeinateコマンド:Macを眠らせない → 長時間の作業や会議で活躍
  2. sayコマンド:Macにしゃべらせる → 学習・通知・演出に応用可能
  3. 組み合わせ技:スリープ防止+完了通知で「仕事の相棒」に
  4. 周辺コマンドpbcopy/open/screencapture/shortcuts run もあわせて覚えると効率アップ

どれも「ちょっとした工夫」で日常のMacライフを快適にしてくれる機能です。ぜひターミナルを開いて試してみてください。

参考文献・出典

  1. [1]macOS man page, caffeinate(8) — run man caffeinate in Terminal.
  2. [2]macOS man page, say(1) — run man say in Terminal.

関連記事

2026年8月4日

Windowsに最初から入っている便利機能──PowerToys・winget・God Modeで日常操作を速くする【2026年版】

PowerToys、winget、God Mode、Problem Steps Recorder、Efficiency Modeなど、Windows 11に標準搭載またはMicrosoft公式に無料提供されているのに意外と知られていない便利機能を、実際の使い方つきでまとめました。

テクノロジー続きを読む
2025年9月4日

WindowsとMacの違いを徹底解説 – 歴史・シェア・初心者向けまとめ

WindowsとMacの違いを初心者向けに分かりやすく解説。歴史的背景から現在のシェア、ユーザー層の違いまで網羅的に紹介します。

テクノロジー続きを読む
2026年9月6日

GPT-6 Astra登場──Codexで仕事を任せる力はどこまで変わったか【実力・比較・AGI論争】

初めてAstraを使って制作した記事。GPT-6 Astraの新機能、GPT-5.6系との違い、Fable 5.1・Opus 5との比較、ARC-AGI-3の評価条件、海外の賛否とアルトマンのAGI発言を、2026年9月6日時点の資料から読み解く。

テクノロジー続きを読む
2026年9月4日

nagaraを作った──AIの返事も小説も、好きな声で「ながら聞き」する【開発記】

Claude Codeの長い返事を、もっと心地よく聴きたかった。AivisSpeechとSwiftで作ったmacOS用OSSプレイヤーnagaraの開発記。静かな受信、文単位の再生、声を変えずに速度を変える設計を紹介する。

テクノロジー続きを読む
2026年9月2日

Claude Desktopを捨てなくていい。それでもCLIを選ぶ理由──SubagentsとAgent Teams実践ガイド

DesktopのCodeタブでもSubagentsは動く。それでもCLIにしかないAgent Teams、パイプ、シェル環境の直結は何を変えるのか。個人向けClaude契約で使うClaude Codeを前提に、teammateとSubagentが継承する推論モデルとeffort、設定ファイル、Git除外、コピペ可能なレビュー・ログ監視エージェントまで実務目線で解説する。

テクノロジー続きを読む