Mac에서 Automator로 스크린샷을 반복 촬영하는 방법
Take Screenshot과 Loop 액션으로 Automator 스크린샷 워크플로를 만들고, 순서가 있는 파일이 필요하면 셸 액션을 사용합니다.
11분 분량생산성작성자: Temposhot Team
Automator는 macOS에 기본으로 포함되어 있으며, 별도 소프트웨어 없이 스크린샷을 연속으로 촬영할 수 있습니다. 액션 두세 개로 구성된 워크플로가 화면을 캡처하고, 대기하고, 반복합니다. 이 글은 워크플로를 두 가지 방식으로 만들고, 앱으로 저장하는 방법을 설명합니다. 또한 전용 캡처 도구가 더 적은 노력으로 같은 결과를 내는 지점을 정리합니다.
Automator의 화면 기록 권한 확인
macOS는 화면 캡처를 보호된 권한으로 취급합니다. 워크플로가 처음 화면을 캡처할 때 macOS가 Automator의 화면 기록 허용 여부를 묻습니다. 거부하거나 프롬프트가 표시되지 않으면 저장된 파일에는 바탕화면 사진과 메뉴 막대만 나타납니다.
System Settings를 열고 Privacy and Security로 이동한 뒤 Screen Recording(화면 기록) 목록을 찾습니다. 항목 이름은 macOS 버전마다 다릅니다. 목록에서 Automator를 켜고, Automator를 종료한 뒤 다시 엽니다.
앱으로 저장한 워크플로는 같은 목록에 별도 항목으로 나타납니다. Automator에 권한이 있어도 저장된 앱은 처음 실행할 때 자체 권한이 필요합니다.
바탕화면만 찍히는 원인
화면 기록 권한이 없으면 macOS는 캡처 자체는 성공시키지만, 프로세스가 볼 수 있는 내용인 바탕화면 사진과 메뉴 막대만 반환합니다. 오류 메시지는 나타나지 않습니다. 따라서 첫 테스트는 파일 개수만 세지 않고 열어서 내용을 확인합니다. 수 MB를 예상했는데 파일이 수백 KB라면 앱 창이 빠졌을 가능성이 높습니다.
저장된 앱을 옮기거나 이름을 바꿀 때
macOS는 권한 항목을 앱에 연결합니다. 워크플로를 다시 만들거나 다른 이름으로 저장하거나 다른 폴더로 옮기면 시스템은 새 앱으로 취급할 수 있습니다. 이 경우 권한을 다시 묻거나, 기존 항목을 제거하고 새 항목을 추가하기 전까지 접근을 조용히 거부합니다. 첫 실제 실행 전에 최종 이름과 위치를 정합니다.
기본 액션 또는 셸 액션 선택
Automator에서 같은 결과를 얻는 방법은 두 가지입니다.
- 기본 액션. "Take Screenshot" 액션과 "Loop" 액션을 사용함. 코드가 필요 없지만 파일 이름과 캡처 영역을 제어하는 범위가 제한됨.
- 셸 액션. "Run Shell Script" 액션에서
screencapture명령을 호출함. 셸 코드 몇 줄이 필요하지만 파일 이름, 형식, 영역을 정확히 제어함.
빠른 테스트에는 기본 액션으로 시작합니다. 파일이 서로 덮어쓰이거나 고정된 영역이 필요하면 셸 액션으로 전환합니다.
Terminal에서 명령 먼저 테스트
셸 줄을 Automator에 붙여넣기 전에 Terminal에서 한 번 실행합니다. screencapture -x ~/Desktop/test.png를 실행하면 소리 없이 바탕화면에 파일 하나가 생성되어야 합니다. 바탕화면 사진만 담긴 이미지가 나오면 Terminal에 화면 기록 권한이 없는 것이며, 이는 Automator와 별도의 권한 항목입니다. 명령이 Terminal에서 동작한 뒤에 남는 Automator 내부 문제는 Automator 자체의 권한이나 경로 문제입니다. 두 경우 모두 원인을 더 빨리 좁힐 수 있습니다.
방법 1: Take Screenshot과 Loop 사용
워크플로 만들기
Applications에서 Automator를 열고 새 Workflow 문서를 만듭니다.
Take Screenshot 추가
라이브러리에서 "screenshot"을 검색하고 Take Screenshot을 워크플로로 드래그합니다. 전체 화면 캡처를 선택하고, 이 작업에만 쓰는 폴더를 저장 위치로 지정합니다. 사용 가능한 옵션은 macOS 버전마다 다릅니다.
대기 추가
Pause 액션을 추가하고 대기 시간을 설정합니다. 예: 3초.
반복 추가
끝에 Loop를 추가합니다. 자동으로 반복하도록 선택하고, 10회처럼 횟수를 지정하거나 몇 분 뒤에 멈추도록 설정합니다.
짧은 테스트 실행
횟수를 3으로 설정하고 Run을 선택한 뒤 폴더를 엽니다.
테스트 후 파일 이름을 확인합니다. 액션이 매번 같은 이름을 쓰면 캡처마다 이전 파일이 덮어써져 파일 하나만 남습니다. 날짜와 시간을 붙이는 Finder 이름 변경 액션을 추가하는 방법도 있지만, 순번 이름이 정렬하기에 더 쉽습니다. 옵션 2가 이 문제를 직접 해결합니다.
반복 한 번에 걸리는 실제 시간
Pause 액션은 주기의 일부만 결정합니다. 매 반복에는 이미지를 저장하는 시간도 포함되며, 5K 디스플레이에서는 전체 화면 PNG 한 장을 저장하는 데 눈에 띄는 시간이 걸릴 수 있습니다. Pause를 3초로 설정하고 10회 반복하면 대기만으로 30초가 걸리며, 실제 실행 시간은 이보다 조금 깁니다. 페이지 넘김마다 한 프레임을 찍는 것처럼 시간에 민감한 작업은 공칭 값에 의존하지 않습니다. 스톱워치로 한 번 실행해 시간을 재고 Pause 값을 조정합니다.
Rename Finder Items로 순번 이름 지정
기본 액션을 유지하려면 Rename Finder Items 액션에 순번 이름을 만드는 모드가 있습니다. 이 액션은 전달받은 파일에 동작하므로, 워크플로가 매 반복마다 새 스크린샷을 넘겨줘야 합니다. 실제로는 반복문 안에서 이 설정이 까다롭습니다. 더 간단한 방법은 기본 반복으로 날짜와 시간 이름을 붙여 빈 폴더에 저장한 뒤, 폴더의 모든 파일을 이름 순서대로 순번 이름으로 바꾸는 별도의 일회성 워크플로를 실행하는 것입니다.
방법 2: Run Shell Script와 Loop 결합
Take Screenshot을 Run Shell Script로 바꾸고 Pause와 Loop 액션은 그대로 둡니다. 셸을 zsh로 설정하고 아래 코드를 액션에 붙여넣습니다.
dir=~/Captures/automator
mkdir -p "$dir"
n=$(ls "$dir" | wc -l | tr -d ' ')
screencapture -x -t png "$dir/frame-$(printf %04d $((n + 1))).png"
반복 한 번마다 폴더에 있는 파일 수를 세고 다음 번호를 씁니다. 그래서 프레임은 촬영 순서대로 정렬됩니다. 예: frame-0001.png, frame-0002.png 등. -x 플래그는 셔터음을 끕니다. 전체 화면 대신 고정 영역을 캡처하려면 파일 이름 앞에 -R 0,0,1440,900을 추가합니다.
작업을 시작하기 전에 폴더를 비우거나 dir 값을 바꿉니다. 그렇지 않으면 이전 실행의 번호 뒤에서 번호가 이어집니다.
고정 영역의 좌표
-R 뒤의 값은 기본 디스플레이의 왼쪽 위 모서리를 기준으로 한 x, y, 너비, 높이이며 단위는 포인트입니다. Retina 디스플레이에서는 저장되는 이미지가 가로세로 각각 두 배의 픽셀을 가집니다. 따라서 -R 0,0,1440,900은 2880 × 1800 이미지를 만듭니다. 숫자를 찾으려면 Shift+Command+4를 누릅니다. 십자선 옆에 포인터 좌표가 표시됩니다. 영역의 왼쪽 위 모서리와 오른쪽 아래 모서리 좌표를 적고, Escape를 눌러 취소한 뒤 차이를 계산해 너비와 높이를 구합니다. 네 숫자를 기록하고, 모든 실행에서 대상 창의 위치를 동일하게 유지합니다.
프레임 사이에 페이지 넘김 추가
슬라이드나 페이지를 순서대로 캡처하려면 각 프레임 뒤에 키를 눌러야 합니다. 셸 액션 뒤에 Run AppleScript 액션을 추가합니다.
on run {input, parameters}
tell application "System Events" to key code 124
return input
end run
Key code 124는 오른쪽 화살표 키입니다. 키 입력은 맨 앞에 있는 앱으로 전달되므로, 실행 전에 대상 앱을 앞으로 가져오고 실행 중에는 Mac을 조작하지 않습니다. 저장된 앱은 System Events가 키를 보내려면 Accessibility 권한이 필요합니다.
1분에 한 프레임을 찍는 작업
천천히 진행되는 작업, 예를 들어 2시간짜리 배포 동안 대시보드를 지켜보는 경우에는 Pause를 60초로, Loop를 120분 후 중지하도록 설정합니다. 반복 루프는 반복 사이마다 시간 제한을 확인하므로, 제한 시간 이후 첫 반복에서 종료되며 약 120개의 프레임이 생성됩니다. 각 프레임은 전체 화면 이미지이므로 먼저 디스크 여유 공간을 확인합니다. 실행 중에는 Automator 창이나 저장된 앱이 계속 점유되며, 중간에 멈추면 워크플로가 끝나지만 이미 저장된 프레임은 폴더에 남습니다.
디스플레이가 여러 개인 경우
파일 이름 하나만 지정한 screencapture는 기본 디스플레이만 캡처합니다. -D 2를 지정하면 두 번째 디스플레이를 캡처하고, 파일 이름을 두 개 전달하면 한 반복에서 두 디스플레이를 모두 저장합니다. 디스플레이 번호는 시스템 설정의 배열을 따르며, 디스플레이를 다시 연결하면 바뀔 수 있습니다. 따라서 장시간 실행 전에 각 디스플레이의 프레임을 하나씩 확인합니다.
재사용 가능한 Automator 앱 저장
File, Save 순서로 선택하고 파일 형식으로 Application을 고릅니다. 앱은 Applications 폴더처럼 고정된 위치에 저장합니다. 더블클릭하면 Automator를 열지 않고 워크플로가 실행됩니다.
저장된 앱을 처음 실행하면 앱 자체의 화면 기록 권한 요청이 표시됩니다. 워크플로가 AppleScript로 키를 보내면 앱에 Accessibility 권한도 필요합니다.
키보드 단축키로 실행
Automator Quick Action에 키보드 단축키를 지정할 수 있습니다. Quick Action 유형의 새 문서를 만들고, 입력을 받지 않도록 설정한 뒤 같은 액션을 추가하고 저장합니다. 시스템 설정의 키보드 단축키 섹션에서 services 아래의 해당 액션을 찾아 단축키를 지정합니다. 단축키를 누르면 어느 앱에서든 반복이 시작됩니다. 대상 앱이 계속 앞에 있어야 하는 페이지 넘김 작업에 유용합니다.
워크플로 문제 해결
| 증상 | 가능한 원인 | 해결 |
|---|---|---|
| 이미지에 바탕화면만 보임 | 화면 기록 권한 없음 | Automator 또는 저장된 앱을 허용한 뒤 다시 열기 |
| 많은 반복 후 파일 하나만 남음 | 고정 파일 이름이 매번 덮어써짐 | 옵션 2를 사용하거나 이름 변경 단계를 추가 |
| 반복이 한 번만 실행됨 | Loop가 매번 묻도록 설정됨 | 자동으로 반복하도록 변경 |
| 두 번째 디스플레이가 없음 | 한 디스플레이에서만 전체 화면 캡처 | -D 1과 -D 2로 각 디스플레이를 따로 캡처 |
| 프레임이 검게 나옴 | 실행 중 디스플레이가 잠들었음 | 실행 시간 동안 Mac을 깨어 있게 유지 |
워크플로 로그 확인
실행이 일찍 멈추면 Automator 창의 로그에 실패한 액션과 오류 메시지가 표시됩니다. 오류로 종료되는 셸 액션은 반복을 중단합니다. 흔한 원인은 ~/My Captures처럼 공백이 있는데 따옴표로 묶지 않은 경로입니다. 위 스크립트의 "$dir/..." 따옴표는 그대로 유지합니다. 또 다른 원인은 저장된 앱이 실행될 때 마운트되지 않은 외장 드라이브의 폴더입니다.
Mac을 깨어 있게 유지
긴 반복은 디스플레이 잠자기 타이머보다 오래 실행될 수 있습니다. caffeinate 명령은 다른 명령이 실행되는 동안 Mac을 깨어 있게 하며, caffeinate -d는 디스플레이 잠자기를 막습니다. 실행 전에 Terminal에서 시작하고 실행 후 Control+C로 중지하는 방법이 가장 간단합니다. 또는 작업 시간 동안 시스템 설정에서 디스플레이 잠자기 시간을 늘릴 수 있습니다.
Automator로 부족한 경우
Automator는 고정된 횟수와 고정된 간격으로 실행하는 작업을 다룹니다. 다음 요구에는 추가 작업이 필요합니다.
- 프레임 사이의 키 입력. 페이지를 넘기려면 System Events를 통해 키를 보내는 AppleScript 단계와 Accessibility 권한이 필요함.
- 특정 시각에 중지. Loop 액션은 반복 횟수나 분 단위만 셈. 18:30에 중지하려면 스크립트에서 날짜 계산이 필요함.
- 일시 정지와 재개. 중간에 멈추면 워크플로 전체가 끝남.
- 검색 가능한 결과물. Automator는 이미지를 PDF로 묶을 수 있지만, OCR이 없으면 PDF에 텍스트 레이어가 없음.
Temposhot의 Auto Capture는 이 기능들을 설정으로 제공합니다. 각 주기마다 스크린샷을 저장하고, 선택 사항인 Key press를 보내고, 지정한 간격만큼 대기합니다. 중지 조건은 Screenshots, Duration, End time이며, 플로팅 툴바에서 일시 정지, 재개, 종료를 할 수 있습니다. 내보내기는 검색 가능한 PDF와 MP4를 포함합니다. 키 입력 자동화, Duration, End time, 세션당 무제한 스크린샷은 Temposhot Pro가 필요합니다.
같은 작업을 Auto Capture 설정으로 구성
위의 페이지 넘김 워크플로, 즉 Right Arrow 키와 2초 대기로 40프레임을 캡처하는 작업은 필드 네 개로 대응됩니다. 카운트다운은 Automator에 대응하는 항목이 없는 유일한 필드입니다. 선택지는 None, 3 s(기본값), 5 s, 10 s이며, 첫 프레임 전에 캡처 대상 문서 뷰어를 첫 페이지로 가져올 시간을 줍니다. Stop condition을 Screenshots로 설정하고 40을 입력합니다. Interval은 2초, Key press는 Right Arrow, Countdown은 3 s로 설정합니다. 그다음 Windows 탭에서 창을 선택합니다. Temposhot은 실행이 시작될 때 해당 창을 앞으로 가져오므로 키가 창에 전달됩니다. 같은 작업을 자주 실행하면 Save Current Setup으로 네 값을 프리셋으로 저장합니다.
실행을 18:30에 정확히 멈춰야 하면 Stop condition을 End time으로 설정하고 현지 시각을 입력합니다. 일시 정지는 종료 시각을 옮기지 않으므로, 20분 동안 일시 정지해도 실행은 18:30에 끝납니다. Automator 방식에서는 시계를 읽고 반복을 끝내는 스크립트가 필요합니다.
300프레임 페이지 작업에 드는 노력
캡처가 허용된 문서 300페이지를 페이지마다 한 프레임씩, 사이에 Right Arrow를 눌러 캡처한다고 가정합니다. Automator에서는 번호 이름을 쓰는 셸 액션, AppleScript 키 단계, 저장된 앱의 Accessibility 권한, 십자선으로 잰 영역, 그리고 PDF를 만드는 별도 단계가 필요합니다. 이 PDF에도 텍스트 레이어는 없습니다. 어떤 중단이든 실행을 끝내며, 다시 시작하려면 횟수와 시작 번호를 직접 조정해야 합니다. Auto Capture에서는 같은 작업이 필드 네 개와 창 선택으로 끝납니다. 실행은 플로팅 툴바에서 일시 정지하고 재개할 수 있으며, PDF 내보내기에는 OCR 텍스트가 포함됩니다. 차이는 캡처 품질이 아니라 캡처를 둘러싼 연결 작업의 양에 있습니다.
Automator가 여전히 적합한 경우
Automator는 앱을 설치할 수 없는 Mac에서 작업을 실행해야 할 때, 출력이 원본 이미지 파일이면 충분할 때, 또는 캡처가 파일 이동, 이미지 크기 조정, 메일 발송과 같은 더 큰 워크플로의 한 단계일 때 여전히 좋은 선택입니다. 이런 경우에는 옵션 2의 번호가 붙은 파일 이름을 사용하는 셸 액션이 가장 안정적인 구성 요소입니다.
40프레임 작업의 시간 확인
3초 카운트다운과 2초 간격이면 40프레임 작업은 총 약 83초를 기다립니다. 첫 프레임 전 3초와 간격 80초이며, 각 캡처에 걸리는 시간은 포함하지 않습니다. Automator 버전은 각 반복에 저장 시간도 더하므로, 실제 실행 시간은 대기 설정만으로 계산한 값보다 깁니다. Temposhot 실행을 시작한 뒤 끝에 프레임 수를 세어 40개인지 확인합니다. 개수가 다르면 다음 실행 전에 중지 조건을 다시 확인합니다.
Temposhot 실행 문제 해결
| 증상 | 가능한 원인 | 해결 |
|---|---|---|
| Key press가 효과가 없음 | Accessibility 권한이 없거나 macOS가 키를 전역으로 처리함 | Accessibility를 허용한 뒤 키로 짧은 테스트 실행 |
| 대상 창이 앞으로 오지 않음 | Accessibility 권한이 없음 | 권한을 허용함. macOS가 여전히 포커스 전환을 막으면 Temposhot이 요청할 때 창을 클릭 |
| 프레임이 반복됨 | 페이지 렌더링이 끝나기 전에 키가 도착함 | 간격을 2초에서 3초처럼 늘림 |
| 첫 프레임에 잘못된 페이지가 나옴 | 창을 전환하기에 카운트다운이 짧음 | 카운트다운을 5초 또는 10초로 설정 |
| 40프레임 전에 실행이 멈춤 | Stop condition이 Duration 또는 End time임 | Stop condition을 Screenshots 40으로 설정 |
자주 묻는 질문
Automator는 여전히 macOS에 포함되나요?
네. 최신 macOS 버전에서는 Shortcuts 앱과 함께 Applications 폴더에 Automator가 있습니다.
Automator로 창 하나만 캡처할 수 있나요?
Take Screenshot 액션은 이름으로 창을 지정하지 않습니다. screencapture -l 플래그는 창 ID를 받지만, macOS에는 창 ID를 출력하는 내장 명령이 없습니다.
Automator 스크린샷이 서로 덮어써지는 이유는 무엇인가요?
기본 액션은 반복할 때마다 같은 파일 이름을 쓸 수 있습니다. 반복마다 프레임에 번호를 붙이는 옵션 2의 셸 액션을 사용합니다.
Automator로 스크린샷을 PDF로 만들 수 있나요?
Automator에는 이미지를 PDF로 묶는 액션이 포함되어 있습니다. 결과 PDF에는 텍스트 레이어가 없으므로 검색 가능한 PDF가 아닙니다.
나중에 Automator PDF에 텍스트 레이어를 추가할 수 있나요?
네, 별도의 단계로 가능합니다. Screenshot to Searchable PDF는 브라우저에서 스크린샷에 텍스트 인식을 실행하고, 검색하고 복사할 수 있는 PDF를 반환합니다.
스크린샷에 포인터를 포함할 수 있나요?
screencapture 명령은 기본적으로 포인터를 제외합니다. -C를 추가하면 포인터가 포함되며, 프레임에서 누가 어디를 클릭했는지 기록할 때 유용합니다. 기본 Take Screenshot 액션은 macOS 버전에 따라 같은 설정을 제공하지 않습니다.
반복이 한 번만 실행된 뒤 멈추는 이유는 무엇인가요?
Loop 액션이 계속하기 전에 묻도록 설정되어 있을 가능성이 높습니다. 자동으로 반복하도록 바꾸고 횟수나 분을 설정합니다. 이전 액션이 실패하지 않았는지도 확인합니다. 로그에 오류가 표시됩니다.
Automator가 지정한 시각에 반복을 시작할 수 있나요?
Automator에는 자체 스케줄러가 없습니다. launchd 에이전트나 캘린더 기반 트리거로 특정 시각에 저장된 앱을 열 수 있지만, 각각 설정이 추가됩니다. 특정 시각에 끝나야 하는 실행은 Temposhot의 End time 중지 조건을 설정으로 지정하면 됩니다.
반복 스크린샷을 완성된 결과물로
키 입력, 중지 조건, PDF 또는 MP4 내보내기가 필요한 시간 기반 실행은 자동 캡처 가이드나 Mac 스크린샷 자동화를 참고합니다. Automator 없이 같은 반복을 만들려면 명령줄에서 스크린샷 자동화하기를 읽습니다.
automatorscreenshot-automationmacosworkflows
여기서 사용한 용어: screenshot workflow
반복되는 스크린샷을 완성된 결과물로 만듭니다
Temposhot은 타이머 또는 클릭할 때마다 캡처하고, 결과를 PDF, 이미지, ZIP 또는 MP4로 내보냅니다.
관련 글
- macOS에서 명령줄로 스크린샷 자동화하기macOS screencapture 반복문으로 전체 화면, 고정 영역, 페이지 넘김 스크린샷을 찍습니다. 안전한 파일 이름 짓기와 자주 발생하는 오류의 해결 방법도 다룹니다.
- Mac의 Apple 단축어 앱으로 스크린샷 자동화하기Mac의 단축어로 일정 간격마다 스크린샷을 찍고, 지정한 시각이나 앱 실행 시점에 단축어를 실행하며, 스크립트와 화면 기록 권한 문제를 해결합니다.
- Mac 내장 도구로 스크린샷을 자동화하는 방법screencapture, Automator, Shortcuts로 Mac 스크린샷을 자동화합니다. 권한 설정, 안전한 반복 루프, 문제 해결 방법을 다룹니다.
- Mac에서 스크린샷 찍는 방법: 내장 도구와 서드파티 앱 비교서드파티 스크린샷 앱이 Mac 내장 도구보다 나은 경우와 Cmd+Shift 단축키만으로 충분한 경우를 비교합니다. CleanShot X, Snagit, Temposhot을 비교합니다.