AppleScript

2023. 10. 2. 18:07·AppleScript
728x90

macOS 자동화 작업을 해야 하는 상황이 생겼다.

리서치를 해보니 AppleScript로 macOS관련 다양한 자동화를 할 수 있던것을 찾았고 그것에 대해서 공부하고 정리해봤다.

AppleScript란?

  • 애플이 개발한 자동화 스크립트 언어
  • 사용자의 작업을 간소화 하고 일상적인 업무 프로세스 자동화에 도움
  • 애플리케이션 간의 상호작용 및 통합도 쉽게 구현 가능
  • macOS 운영체제와 통합되어 있음

AppleScript로 할 수 있는 것들

  • 파일 및 폴더 관리, 애플 애플리케이션 작업 자동화, 작업 스케줄링 및 다른 일상적인 작업을 자동화 할 수 있음
  • Safari, Mail, iTunes, Pages, Numbers 등 Apple 애플리케이션을 제어하고 스크립트로 작업 수행
  • macOS 시스템 설정 변경 또는 사용자 환경 구성 가능
  • 파일 및 폴더 생성, 복사, 이동 이름 변경 및 삭제 가능
  • 사용자와 상호작용하는 대화형 스크립트 구현 가능, 이를 통해 사용자로부터 정보를 수집하고 결과 표시

AppleScript 문법

기본 문법

변수

  • 선언을 할때는 set 키워드 사용
set variable to "허니베져팀은 짱이야"

출력

  • display dialog 사용
display dialog "허니베져의 팀은 6명이다."

조건문

  • if, else, end if 사용
if myVariable is "허니베져팀은 짱이야" then display dialog "변수는 '허니베져팀은 짱이야'입니다."
else display dialog "변수는 다른 값입니다."
end if

반복문

  • repeat, end repeat 사용
repeat with i from 1 to 5 display dialog "반복: " & i
end repeat

do shell script

!https://pf-emoji-service--cdn.us-east-1.prod.public.atl-paas.net/atlassian/warning_64.png

셀 스크립트 실행할때, 시스템 레벨 명령을 사용할 때 신중하게 해야 함, 시스템 손상 주의

set myResult to do shell script "echo 'Hello, Shell Script!'"
display dialog myResult
  • "echo 'Hello, Shell Script!'를 실행하고 결과를 myResult 변수에 저장한다음 결과 표시

AppleScript 예제

사용자 입력 받고 출력하기

set userName to text returned of (display dialog "팀 이름이 뭔가요?:" default answer "")
display dialog "안녕하세요, " & userName & "님!"

애플 애플리케이션 실행

tell application "Safari" activate
end tell

파일 생성 및 쓰기

set myFile to open for access "/Users/username/myfile.txt" with write permission
write "이미지 파일 변환 성공 텍스트" to myFile
close access myFile

파일 또는 폴더 생성

do shell script "mkdir ~/Desktop/NewFolder"

전체화면으로 애플리케이션 실행

tell application "Safari" activate delay 1 set bounds of window 1 to {0, 0, 1920, 1080} *- 전체 화면 크기로 설정*
end tell

시스템 레벨 명령

  • 컴퓨터 시스템의 운영체제나 하드웨어와 상호작용하기 위한 명령어
  • 시스템의 핵심적인 기능을 제어하거나 관리하는 데 사용
  • 시스템의 동작, 네트워크 설정, 사용자 관리, 파일 시스템 관리 등과 관련된 작업을 수행

애플 스크립트 참고 사이트

AppleScript and Numbers

AppleScript: Beginner's Tutorial

Apple Training Series: AppleScript 1-2-3 | Peachpit

728x90

'AppleScript' 카테고리의 다른 글

[AppleScript] Numbers 변환  (0) 2023.10.04
'AppleScript' 카테고리의 다른 글
  • [AppleScript] Numbers 변환
bulmang
bulmang
모바일 개발자 도전
  • bulmang
    bulmang
    bulmang
  • 전체
    오늘
    어제
    • 분류 전체보기 (208)
      • 알고리즘 (68)
        • List (3)
        • Two Pointer (6)
        • Binary Search (4)
        • Prefix Sum (3)
        • Sort (4)
        • Brute Force (5)
        • Array (2)
        • String (4)
        • 프로그래머스 (12)
        • 백준 (9)
        • Queue (2)
        • Stack (2)
        • Recursion (12)
      • Computer Science (16)
        • Computer Architecture (6)
        • Operating System (5)
        • Network (2)
        • 기타 (2)
        • System Programming (1)
      • Swift (70)
        • 개발 (24)
        • 정리 (25)
        • 문법 (20)
      • Flutter (24)
      • 기타 (12)
        • 후기 (12)
      • Git (6)
      • Ios 오픈소스 (5)
      • UI 디자인 (5)
      • AppleScript (2)
  • 링크

    • Notion
    • Github
  • 태그

    피플
    Java
    IOS
    SwiftUI
    자료구조
    컴퓨터구조
    Swift
    FLUTTER
    협업
    Xcode
    til
    알고리즘
    개발
    재귀
    Apple Developer Academy
    백준
    riverpod
    코딩테스트
    문법
    today i learned
  • 최근 댓글

  • 최근 글

  • 인기 글

  • 250x250
  • hELLO· Designed By정상우.v4.10.2
bulmang
AppleScript
상단으로

티스토리툴바