チュートリアル
Shotomatic Team
読了まで約9分

MacのAppleショートカットでスクリーンショットを自動撮影する方法

Macのショートカットでスクリーンショット用ルーチンを作り、個人用オートメーションのトリガーから実行する方法と、スクリプトや画面収録の権限問題を直す手順を解説します。

Macのショートカットアプリのアイコンと個人用オートメーションのトリガー一覧

この記事で扱うのはAppleのショートカットアプリであり、Shift-Command-3Shift-Command-4Shift-Command-5のキーボードショートカットではありません。必要な権限を確認し、3フレームを撮るショートカットを作って試します。その後、個人用オートメーションのトリガーを追加し、起動方法を選びます。

開示事項: 私たちはShotomaticを開発しています。この記事では、まずAppleのショートカットを設定し、必要な権限と制約も説明します。

スクリプトアクションと画面収録を許可する

最初に実行する前に、2つの設定を確認します。

  1. スクリプトアクション: Run Shell Scriptが使えない場合は、ショートカットの設定を開き、スクリプトを許可するための詳細なプライバシーとセキュリティ項目を確認します。Appleのショートカットの詳細設定にも説明があります。内容を理解できるコマンドに限って、スクリプトアクションを有効にしてください。
  2. 画面収録: 初回実行時に、ショートカットが画面収録アクセスを求めることがあります。画像が真っ黒、または一部しか写らない場合は、システム設定 > プライバシーとセキュリティ > 画面収録とシステムオーディオでショートカットを許可します。macOSから求められたらアプリを開き直してください。

以下のスクリーンショット用ループだけなら、アクセシビリティ権限は不要です。キーを送ったり別のアプリを操作したりするAppleScriptを追加する場合にだけ必要になります。

スクリーンショットを繰り返すショートカットを作って試す

Run Shell Scriptが使えるようになったら、短いテストを作ります。

  1. Macでショートカットを開きます。
  2. 新しいショートカットを作成します。
  3. Repeated Screenshotsという名前を付けます。
  4. Run Shell Scriptを追加します。
  5. 以下のスクリプトを貼り付けます。
  6. 最初の実行では3フレームのテストを維持します。
  7. ショートカットを実行し、出力先フォルダを確認します。
RUN_DIR="$HOME/Desktop/shortcuts-run-$(date +%Y%m%d-%H%M%S)"
mkdir -p "$RUN_DIR"
COUNT=3

for ((i=1; i<=COUNT; i++)); do
  screencapture -x -m "$RUN_DIR/frame-$(printf "%02d" "$i").png"
  if (( i < COUNT )); then
    sleep 10
  fi
done

このショートカットは、タイムスタンプ付きのフォルダを新しく作り、メインモニターを10秒間隔で3回撮影します。COUNTを増やしたり間隔を変えたりする前に、フォルダ、画像の内容、ファイル順を確認します。

個人用オートメーションから起動する

macOS 26のショートカットには、個人用オートメーションのためのAutomationセクションがあります。AppleのMacで個人用オートメーションを使う方法にも案内があり、現在のアプリには「時刻」「アプリ」「フォルダ」「ファイル」などのトリガーがあります。

テスト済みのスクリーンショット用ショートカットを予約実行する手順です。

  1. ショートカットのサイドバーでAutomationを開きます。
  2. New Automationを選びます。
  3. Time of Dayを選びます。
  4. 時刻と繰り返しスケジュールを設定します。
  5. 実行するアクションとしてRepeated Screenshotsショートカットを選びます。
  6. オートメーションを保存します。

トリガーがショートカットを起動するのは1回です。撮影枚数と撮影間隔は、ショートカット内のループが制御します。

特定のアプリを開いた、または閉じた後に始めたい場合は、Appトリガーを使います。フォルダとファイルのトリガーは、受け取った素材に連動するワークフローに使えます。本番で利用する前に、問題のないサンプルファイルで試してください。

Terminalからショートカットを実行する

Appleはコマンドラインからショートカットを実行する方法も案内しています。

shortcuts run "Repeated Screenshots"

大きなスクリプトや開発ワークフローから、名前を指定してショートカットを起動したい場合に役立ちます。Terminalからしか起動しないのであれば、通常はscreencaptureを直接実行するほうが簡単です。Macでコマンドラインからスクリーンショットを撮る方法では、ページ送り、JPG出力、長時間実行時の制御を説明しています。

ショートカットとAutomatorの比較

どちらのアプリからも反復キャプチャを起動できますが、適した出発点は異なります。

ショートカットが向く場合Automatorが向く場合
個人用オートメーションのトリガーを使いたい標準のTake ScreenshotとLoopを使いたい
SpotlightやDockからルーチンを起動したいダブルクリックできるApplicationを作りたい
すでにショートカットで処理を整理している従来のAutomatorエディタを使いたい

Automator標準の方法は、Automatorでスクリーンショットを繰り返し撮る方法をご覧ください。

ショートカットのトラブルシューティング

問題対処方法
Run Shell Scriptが無効ショートカットの詳細設定を確認し、コマンドを理解できる場合に限ってスクリプトを許可する
画像が真っ黒になるショートカットに「画面収録とシステムオーディオ」を許可し、開き直して再試行する
オートメーションは動くがファイルがない手動でショートカットを実行し、デスクトップのフォルダとシェルアクションのエラーを確認する
以前のファイルが新しい実行に混ざるタイムスタンプ付き出力先フォルダを維持する
対象が切り抜き範囲から動くオートメーション実行前に位置を戻し、-Rの長方形を更新する
実行に時間がかかりすぎる枚数または間隔を減らし、3フレームでもう一度試す

ショートカットが最適なキャプチャ画面ではない場合

ショートカットは、起動方法やイベントトリガーを重視する場合に便利です。一方、実行するたびにウインドウ、フレーム数、間隔、ページ送り、確認手順、書き出し形式を変える場合は扱いにくくなります。

キャプチャ設定とフレーム確認を同じアプリで行いたい場合、Shotomaticなら対象、枚数、間隔、任意のキー入力を選び、必要なフレームだけを書き出せます。ShotomaticでMacのスクリーンショットを自動化する方法をご覧ください。キャプチャ後に順番どおりの書類へまとめる場合は、MacでスクリーンショットをPDFに保存する方法も参考になります。

よくある質問

Macのショートカットアプリでスクリーンショットを自動撮影できますか?

はい。ショートカットからscreencaptureのシェルスクリプトを実行し、時刻やアプリのイベントなど対応するトリガーを使った個人用オートメーションから起動できます。

Macのスクリーンショット用キーボードショートカットと同じものですか?

いいえ。この記事では、Appleのショートカットアプリで繰り返し実行できるワークフローを作ります。1枚だけ撮る場合は、Shift-Command-3、Shift-Command-4、Shift-Command-5を使います。

ショートカットでRun Shell Scriptが無効なのはなぜですか?

ショートカットの詳細設定で、スクリプトアクションの許可が必要な場合があります。内容を読み、理解できるスクリプトに限って有効にしてください。

MacのショートカットをTerminalから実行できますか?

はい。標準のshortcutsコマンドを使い、たとえばshortcuts runの後にショートカット名を指定します。

Macのスクリーンショット自動化とは?

Macのスクリーンショット自動化の意味、手動撮影や画面収録との違い、専用の撮影ワークフローが必要になる場面を解説します。

読了まで約15分
集中してパソコン作業を行うためにノートパソコンとモニターを置いた机

繰り返しのスクリーンショットを完成した成果物に

ShotomaticはMacでスクリーンショットのセッションを撮影、整理、書き出しできます。

MacのAppleショートカットでスクリーンショットを自動撮影する方法 | ブログ | Shotomatic