AppleScript 소개

Apple은 플랫폼에 대한 침입을 허용하는 것으로 유명하지 않으며 신중하게 보호되는 iOS 환경이 그러한 예입니다. 사용자 정의할 수 있지만 탈옥과 관련된 위험과 같은 특정 위험을 감수해야 합니다. 그러나 Mac OS X은 약간 다른 시나리오입니다. Mac은 Apple의 마법과 함께 작동하는 정교한 Unix 빌드입니다. Mac에서 버튼 클릭 한 번으로 많은 작업을 번거롭지 않게 만들 수 있는 사용자 지정 작업이 있습니다. 이를 달성하기 위해 Apple은 1993년에 AppleScript를 만들었습니다. 여기에서 사용자는 특정 수준의 자동화가 설정될 때까지 Mac에서 기본 기능을 자동화할 수 있습니다. 기본 스크립트를 통해 Mac 경험을 사용자화하려는 경우 방법은 다음과 같습니다.

Apple의 자동화된 스크립팅 언어와 사용 방법에 대해서만 소개할 수 있음을 기억하십시오. 우리는 당신을 전문가로 만들 수 없습니다. 즉, 스스로 관리해야 하지만 그렇게 하면 컴퓨팅 세계가 진정으로 바뀌고 이것은 과장된 것이 아니라 말 그대로 바뀝니다. 반복적으로 수행해야 하는 수많은 작업, 모든 운영 체제가 겪는 고통이 클릭 한 번으로 사라진다고 상상해 보십시오. 바탕 화면의 아이콘 정렬부터 시간 기록, Excel에 입력 및 이메일 보내기에 이르기까지 모든 작업을 수행할 수 있습니다. 버튼 클릭으로 모든 것이 가능합니다. 반드시 배워야 하는 힘입니다.

소개

AppleScript는 복잡한 Objective C와 달리 덜 복잡하지만 여전히 Swift만큼 쉽지는 않으며 일반 영어를 처리하는 스크립팅 언어입니다. 이 과정에는 프로그래밍 석사 학위가 필요하지 않습니다. 기계에 지시를 내리는 방법만 이해하면 됩니다. 예를 들어:

tell application "Finder"
display dialog "Hello World"
end tell

통사론

모든 프로그래밍에는 규칙이 있습니다. 그것은 프로그램을 언제 시작할지, 무엇을 시작할지, 시작되면 무엇을 하고 언제 종료할지 알려주는 것입니다. 그래서 문자열은, [command] [target type] [target name] [action] [end command]. 이것은 지나치게 단순한 표현이지만 코드를 작성하는 중에 문제가 발생하면 코드에 위의 매개변수 중 하나 이상이 누락되었다고 가정하는 것이 안전합니다.

  StorageStatus는 Mac에 연결된 모든 물리적 저장 장치를 모니터링합니다.

또는 더 간단한 용어로 “텔링 블록”이 있습니다. 여기서 원하는 것을 애플리케이션에 “말하는” 것입니다. 위의 코드처럼 “Hello World”(또는 테스트하기로 결정한 단어)라는 단어가 포함된 대화 상자 창을 표시하도록 Finder에 지시합니다. 명령이 끝나면 “end tell”을 씁니다. 우리가 말했듯이, 그것은 기계이므로 어디에서 끝낼지 알려야 합니다. 그렇지 않으면 컴파일을 거부합니다(컴파일은 코드를 실행 파일로 바꾸는 행위입니다).

컴파일

작성이 끝나면 컴파일을 누르십시오. 구문 오류(대부분 오타)가 있는 경우 오류가 무엇인지 알려 주고(최대한) 오류가 없으면 코드가 자동으로 형식을 지정하고 색상을 지정합니다.

달리기

컴파일 후 실행을 누르면 완료됩니다. 후속 조치에 따라 로그 항목이 작성됩니다. 이 예의 두 시나리오에 대해 아래 예와 같습니다. “리턴”은 입력을 기계로 가져오는 행위입니다. 이 작업에 익숙해지면 한 단계 더 나아가 변수를 선언해 보겠습니다.

변수

프로그래밍에 익숙하다면 미학적 수준에서도 변수에 익숙할 것입니다. 익숙하지 않은 사람들에게 변수는 많은 정보를 조작하기 쉬운 단일 문자열로 압축하는 간단한 방법입니다. 이 작업을 수행하는 방법은 언어마다 다르며 AppleScript를 사용하면 다음 접근 방식을 사용할 수 있습니다.

set varExample to "Hello World"
tell application "Finder"
display dialog varExample
end tell

여기서 “varExample”은 선언된 변수에 부여한 이름입니다. 이제 이 스크립트에서 Hello World를 다시 인쇄해야 하는 경우 varExample만 호출하면 되며 해당 코드를 모두 다시 작성할 필요가 없습니다. 복잡하거나 다른 모든 코드의 결과를 변수에 할당하고 필요할 때 호출할 수 있습니다. 보시다시피 위의 코드를 컴파일하면 이전 코드와 동일한 결과가 나타납니다. “set”과 “to”라는 새로운 단어는 기본적으로 설정된 값을 할당한다는 의미입니다. [this] 에게 “[that]”. 그것은 바로 앞으로입니다. 노련한 프로그래머라면 AppleScript가 자체적으로 변수를 관리할 수 있기 때문에 “type” 변수를 선언할 필요가 없다는 것을 알게 될 것입니다. 변수 이름에는 공백이 있을 수 없으며 컴파일러는 이를 명령으로 간주합니다.

또한 이중 하이픈/대시 “-” 뒤에 아무 것도 작성하면 컴파일러는 이를 주석으로 간주하고 무시합니다. 이것은 당신이하고있는 일에 대한 메모를 남길 수 있기 때문에 편리합니다. 코드가 복잡해지면 필요합니다.

  iCloud에서 원격으로 로그아웃하는 방법

원하는 대로 변수를 사용하여 자유롭게 실험을 실행할 수 있습니다. 여기에 복사하여 붙여넣을 수 있는 예가 있습니다(원하는 경우 직접 시도).

--Numeric/Integer Variables
set theFirstNumber to 1
set the theSecondNumber to 2
--Variable Operations
set theAnswer to (theFirstNumber + theSecondNumber)
set theAnswer to (theAnswer + 1)
--String Variables
set theString to "3+2+1="
--Display Dialog
tell application "Finder"
display dialog theString & theAnswer
end tell

이 코드는 멋진 디스플레이와 가장 기본적인 산술 외에는 아무 것도 수행하지 않으며, 이를 통해 달성할 수 있는 것을 설명하는 데 도움이 되는 예시일 뿐입니다.

사전

이제 위의 모든 내용은 환경에 익숙해지는 데 도움이 됩니다. 일단 당신이 그렇게하면 우리는 어려운 부분에 올 것입니다. 사전에 익숙해지는 것입니다. AppleScript에는 OS X 내의 모든 프로그램 또는 항목에 적용되는 다양한 명령이 있지만 각 응용 프로그램의 개발자는 해당 앱에 전체 AppleScript 지원을 추가해야 합니다. 이를 위해 앱과 통신하는 방법에 대한 간단한 매뉴얼을 작성합니다. 이러한 매뉴얼을 “사전”이라고 합니다. 파일로 이동한 다음 사전 열기로 이동합니다. 여기에 AppleScript를 지원하는 설치된 모든 앱(래퍼를 통해 실행되는 Windows 앱 제외) 목록이 표시됩니다. 앱을 클릭하면 사용자 지정 명령 목록과 사용 방법이 표시됩니다. Evernote를 예시로 열어보겠습니다. 지원하는 모든 명령을 볼 수 있습니다.

AppleScript 편집기 사용자화하기

파일 메뉴에서 “AppleScript 편집기”를 보고 환경 설정을 클릭하면 Apple Script에 가능한 모든 색상 및 형식의 사용자 정의 가능한 목록을 찾을 수 있습니다. 형식은 참고용일 뿐이며 실제 스크립팅에는 중요하지 않습니다.

결론

과도한 부담을 주는 사용자를 피하기 위해 이 지침을 여기서 끝내고 도구에 익숙해지고 몇 가지 옵션을 사용해 볼 수 있습니다. 사용자 정의 스크립트를 만드는 방법에 대한 다음 단계를 곧 알려 드리겠습니다. 의견을 통해 귀하의 경험이 어떻게 진행되었는지 알려주십시오.