将AppleScript添加到Bash脚本

时间:2015-06-16 04:08:18

标签: bash applescript

我有以下Bash脚本。

!#/bin/bash 

fscanx --pdf /scandata/Trust_Report

if [ "$?" = "0" ]; then

我想运行以下AppleScript

tell application "FileMaker Pro Advanced"
    activate
    show window "Trust Reports"
    do script "Scan Trust Report"
end tell



else


   say “It did not scan”



fi

调用此AppleScript的正确语法是什么?

谢谢

1 个答案:

答案 0 :(得分:7)

使用osascript命令。您可以使用-e标记将脚本作为参数传递,如下所示(请注意,不必将其分成多行,我只是这样做以使其更具可读性):

osascript \
    -e 'tell application "FileMaker Pro Advanced"' \
        -e 'activate' \
        -e 'show window "Trust Reports"' \
        -e 'do script "Scan Trust Report"' \
    -e 'end tell'

或者将其作为here文档传递,如下所示:

osascript <<'EOF'
tell application "FileMaker Pro Advanced"
    activate
    show window "Trust Reports"
    do script "Scan Trust Report"
end tell
EOF
顺便说一下,你不需要测试$?在单独的命令中,您可以在if语句中包含您尝试直接检查成功的命令:

if fscanx --pdf /scandata/Trust_Report; then
    osascript ...
else
    say “It did not scan”
fi