screencaptureの-Tオプションを使うと、指定した秒数だけ待ってから撮影する。コマンドを実行してから撮影したい画面に切り替えたり、メニューを開いたりする時間を確保できる。
screencaptureの基本的な使い方は以下を参照。
参考: 【screencapture】コマンドで画面全体のスクリーンショットを撮る
-Tで秒数を指定する
-T <秒数>の形式で指定する。以下は3秒後に画面全体を撮影する例。
$ time screencapture -T 3 shot.png
screencapture -T 3 shot.png 0.08s user 0.02s system 2% cpu 3.412 total
-T3のように、オプションと秒数の間のスペースは省略できる。
待っている間、画面にカウントダウンなどは表示されない。撮影したいタイミングを自分で見計らう必要がある。
小数の秒数も指定できる
秒数には小数も指定できる。-T 1.5を指定すると、約1.5秒待ってから撮影する。
$ time screencapture -T 1.5 shot.png
screencapture -T 1.5 shot.png 0.08s user 0.02s system 4% cpu 1.831 total
-T 0を指定した場合は、-Tを指定しない場合と同じくすぐに撮影する。
秒数は省略できない
screencaptureのヘルプには「default is 5」と書かれているが、-Tの秒数は省略できない。秒数を省略すると、後ろに続くファイル名が秒数と解釈され、エラーになる。
$ screencapture -T shot.png
screencapture: -T requires a valid time
数値以外を指定した場合も同じエラーになる。
クリップボードへの保存と組み合わせる
-cと組み合わせると、指定した秒数の後に撮影した画像をクリップボードに保存する。
$ screencapture -T 2 -c
対話モードと組み合わせる
対話モードの-iと組み合わせると、範囲を選択してから指定した秒数の後に撮影する。範囲を選択する画面はすぐに表示される。
参考: 【screencapture】-iで範囲やウインドウを選択して撮影する
参考
ScreenCapture Command: Capture an image of the screen in macOS\第一線のプログラマーの行動原理を学べる!/
