2017-02-08 8 views
0

Я хочу, чтобы редактор сценариев открыл .scpt-файл, а затем сделайте копию и сохраните ее как приложение. И я хочу автоматизировать все это, так как я не хочу нажимать на дубликат и сохранять, а затем набирать все.
основном то, что я хочу сделатьСоздание редактора сценариев откройте и сохраните файл через терминал (bash)

  1. Открыть xyz.scpt в редакторе сценариев
  2. Сделать дубликат
  3. Сохраните файл xyz.app (должен быть сохранен как приложение)

Я думаю, что я должен использовать applescript для этого, но если есть лучший способ, скажите мне. В настоящее время первые 2 шага кажется достаточно

open xyz.scpt 
osascript -e 'tell application "Script Editor" to activate' #Maybe redundant 
osascript -e 'tell application "System Events" keystroke "," using {command down,shift down}' 
osascript -e 'keystroke "s" using {command down}' 

простой После этого я понятия не имею, как действовать. Как мне изменить имя с «xyz copy» на «xyz» и сохранить его как приложение.

Обратите внимание, что любое решение в порядке. Решение не должно быть решением AppleScript, оно может быть любым типом решения.

+0

Что означает «дублировать его»? Это просто простая копия, например 'cp'? Или редактор скриптов модифицирует любые внутренние пути и т. Д.? – anishsane

+0

@anishsane Просто простая копия, например, cp – ShdwKnght333

+0

Итак, зачем идти на все проблемы с открытием в редакторе и сохранять его? Почему не просто 'cp'? – anishsane

ответ

0

Скопировано из here:

Существует механизм командной строки для этого:

osacompile -o MyScript.app MyScript.scpt 

Маркировка на вопрос, как продублировать по сайтам не представляется возможным. Итак, разместите здесь отдельный ответ.Upvoters, пожалуйста, подтвердите первоначальный ответ на указанной строке. :-)

0

в редакторе сценариев, после открытия xyz.scpt, используйте функцию «сохранить как» с приложением типа и вашим новым файловым путем. Вот документация (в окне библиотеки редактора сценариев):

save v: Сохранить объект. save спецификатор: объект для команды

[как текст]: Тип файла для сохранения данных. Используйте одну из следующих строк: «script», «script bundle», «application», «text».

[in alias]: файл для сохранения объекта.

[run only boolean]: Если сценарий будет сохранен только как Run-Only? Если это так, вы не сможете редактировать содержимое сценария еще раз. Значение по умолчанию не должно сохраняться только при запуске. (Применяется ко всем типам скриптов, кроме «текста»).

[startup screen boolean]: Показать экран запуска? По умолчанию не отображается экран запуска. (Применяется только к скриптам, сохраненным как «приложение»).

[оставаться открытым boolean]: должно ли приложение оставаться открытым после его запуска? По умолчанию не оставаться открытым. (Применяется только к скриптам, сохраненным как «приложение»).

Старайтесь избегать, насколько это возможно, GUI-скриптов (нажатие клавиши, ...). Всегда смотрите сначала, если приложение является скриптовой командой. это быстрее и безопаснее.

+0

Спасибо за вашу помощь снова @pbell. Итак, чтобы подтвердить в моем терминале, я должен набрать 'osascript -e 'сохранить как приложение в« xyz »'' – ShdwKnght333

+0

Когда я попробую приведенный выше сценарий, он дает мне следующую ошибку: ошибка выполнения: «script» не понимает «save» "Сообщение. (-1708) ' – ShdwKnght333

+0

Точный синтаксис сохранения в Applescript: сохранить передний документ как« приложение »в файле« Пользователи: myUser: myFolder: Test.app ». вы должны включить это в свою команду osascript. Однако, когда я сделал тест, я обнаружил, что когда-нибудь редактор сценариев понадобился перед командой «компиляции», чтобы убедиться, что сценарий перекомпилирован, прежде чем сохранять его в качестве приложения. – pbell