AppleScript и Automator — автоматизация в Mac OS X доступна каждому

AppleScriptAppleScript — это скриптовый язык, который позволяет автоматизировать практически любые задачи в операционной системе OS X. Технология и задачи AppleScript схожи с BAT-файлами DOS и скриптами для оболочки (shell) в UNIX, но в отличии от последних у Apple получилось сделать из AppleScript «дружелюбного помощника» для обычного рядового пользователя. Чтобы написать скрипт не нужно быть программистом.

Впервые AppleScript появился в System 7.1.1, которая вышла в октябре 1993 года.

Automator
Каковы возможности AppleScript и на что он способен? Язык глубоко интегрирован в ОС и умеет работать с большинством всех ваших приложений, включая Finder, Safari, iPhoto, iTunes, Adobe Illustrator и Photoshop, Microsoft Word и Excel, VMwareFusion и многих других, поэтому можно утвердительно сказать « он может почти все!»

Например, AppleScript может заменить систему резервного копирования Time Machine и делать копии файлов по расписанию или при выполнении определенных условий. Приведем классический пример с «Hello World!» Для этого запустите приложение Редактор скриптов, он находится в Mac HDD / Программы / AppleScript, в новом документе введите строку say "Hello World!".

Редактор AppleScriptНажмите кнопку Запустить и голос системы OS X зачитает строку «Hello World!» Вот вы и создали свой первый скрипт, хотя толку от него будет мало. AppleScript является объектно-ориентированным языком и очень похож на обычный английский. Например, все поймут что делает такой скрипт:

tell application "Finder"
   make new folder at desktop with properties {name:"Папка", label index:1}
end tell

Редактор скриптов конечно хорош, но многих отпугнет необходимость писать скрипт вручную. Для таких «домашних» есть специальная утилита Automator, которую можно найти в папке Mac HDD / Программы. «Автоматор» здорово упрощает процесс создания скриптов AppleScript.

Пример создания своего процесса в Automator

Запустив программу можно легко создать свой скрипт, который будет решать необходимые задачи. Приведем уже упомянутый выше пример с Time Machine, создадим скрипт, который бы делал резервную копию папки Загрузки (Downloads).

Создание действия в Automator
Запустив Automator выберите в качестве «начальной точки» пункт Файлы и папки. Работа с Automator происходит по принципу Drag&Drop. Слева — панель со стандартными действиями, справа — ваш процесс.

Создание действия с файлами в Automator
Перетаскивая действия слева на право мышкой можно легко создать свой процесс. Для начала добавьте папку Загрузки к действию Получить указанные объекты Finder, а затем добавьте новое действие Копировать объекты Finder, которому тоже укажите свою папку (туда будет сохраняться резервная копия файлов). Осталось только сохранить свой процесс, файл будет иметь расширение *.workflow.

Свой простенький скрипт вы создали, однако он уже на много полезнее say "Hello World!". Запускать скрипт можно при помощи утилиты Automator Runner, также скрипт можно сохранить как плагин Finder (ФайлСохранить как плагин) и вызывать его можно будет из контекстного меню Finder. При выполнении нашего действия, его статус будет отображаться в Menubar.

Статус действия Automator в Menubar
Немного пофантазировав можно изменить скрипт, чтобы он делал резервную копию, например, файлов с FTP-сервера. Это будет очень удобно для веб-мастеров. Вобщем возможности AppleScript практически безграничны.

Как вы могли заметить, список стандартных действий в Automator обширен, но что делать если вы не нашли нужного дейтсвия? Для таких случаев в Automator есть функция Запись. Нажмите кнопку Запись и проделайте необходимое действие самостоятельно, а Automator его запомнит.

Запись действий пользователя в Automator
Благодаря приложению Automator и его функции записи автоматизация в Mac OS X становится доступной пользователю любого уровня. Теперь вам не нужно тратить время на рутинную и ежедневную работу за компьютером.

И если вдруг перед вами встанет задача, к примеру перевести 5000 фотографий в другой формат и изменить размер изображений, то обратившись к Automator вы, а точнее Mac проделает эту работу за несколько минут. Некоторые аналоги Automator существуют и для Windows, но там, во-первых стороннее и платное приложение, во-вторых, оно записывает действия пользователя вплоть до движения курсора мышки, что немного не то, в-третьих интеграция у такой программы будет в разы хуже нежели у AppleScript в Mac OS X.