#applescript #automator
#applescript #automator
Вопрос:
Я пытаюсь создать службу с помощью Automator.
Внутри действия Run AppleScript у меня есть переменная, представляющая собой строку, в которой каждая строка представляет собой слово, разделенное переводом строки. Вот так:
à
às
a
ante
ao
aos
após
aquela
Когда я пытаюсь передать это на терминал, выполнив:
do shell script "echo " amp; (finalText as string)
Я получаю эту ошибку:
The action “Run AppleScript” encountered an error: “sh: line 1: a: command not found
sh: line 2: à: command not found
sh: line 3: ante: command not found
...
sh: -c: line 30: syntax error near unexpected token `do'
sh: -c: line 30: `do'”
Есть идеи?
Комментарии:
1.Когда вы говорите «пытаетесь передать строковую переменную в Bash», что именно вы пытаетесь сделать? Я спрашиваю, потому что использование
do shell script
команды в действии Run AppleScript ничего не даст, если все, что вы делаете, это повторяете некоторые строки текста, однако из-за ошибок вы, очевидно, делаете больше, чем это! В любом случае, чтобы избавиться от ошибок типа command not found, используйте:do shell script "echo " amp; finalText's quoted form
— Что касается синтаксической ошибки около ошибки unexpected token `do’, без просмотра всего кода невозможно устранить неполадки.2. БЛЕСТЯЩЕ.
's quoted form
сделал свое дело. Пожалуйста, сделайте эту команду ответом, чтобы я мог принять.
Ответ №1:
Чтобы избавиться от ошибок типа command not found в этом случае и практически в любое время при передаче переменной в do shell script
команду, используйте:
do shell script "echo " amp; finalText's quoted form
Вы также можете использовать:
do shell script "echo " amp; quoted form of finalText
В зависимости от того, что вы предпочитаете.